Công cụ tính Frame Time
FPS ↔ Mili-giây
Chuyển đổi FPS sang mili-giây
Nhập vào ô bất kỳ, ô còn lại sẽ tự động tính toán. Frame time là quỹ thời gian dành cho một khung hình, và là đơn vị cốt lõi của bất kỳ ai đang tối ưu hiệu năng.
- Tính hai chiều theo thời gian thực
- Chọn nhanh FPS phổ biến
- Bảng tra cứu đủ đến 480 FPS
- Không cần đăng ký
Ở mức 60 FPS, mỗi khung hình có 16.67 ms. Nếu vượt quá giới hạn đó, khung hình sẽ bị trễ.
Công thức là 1000 chia cho tốc độ khung hình. Giá trị của công cụ này không chỉ nằm ở phép tính — mà là việc đối chiếu các mức FPS phổ biến cạnh nhau một cách trực quan.
Ứng dụng thực tế
Công cụ này dùng để làm gì?
-
1
Xác định quỹ thời gian
Nhập tốc độ khung hình mục tiêu. Số mili-giây nhận được là khoảng thời gian tối đa để mọi tác vụ — logic, dựng hình, kết hợp lớp — phải hoàn thành.
-
2
Đo lường chi phí thay đổi
Nếu một tính năng mới làm tốn thêm 3 ms mỗi khung hình, hãy nhập frame time hiện tại vào ô bên phải, cộng thêm 3, rồi xem mức FPS mới ở ô bên trái.
-
3
Kiểm tra kết quả benchmark
Một công cụ báo 6.94 ms tức là đang đạt 144 FPS. Chuyển đổi qua lại là cách nhanh nhất để kiểm chứng xem hai công cụ đo có đồng nhất hay không.
Bảng tham chiếu
Bảng quy đổi FPS sang Frame Time
Tập hợp mọi mức FPS thông dụng, kèm theo cột quỹ thời gian nửa khung hình mà các nhà phát triển thường hướng tới.
| Tốc độ | Thời gian khung hình | Thời hạn nửa khung hình |
|---|---|---|
| 15 FPS | 66.67 ms | 33.33 ms |
| 24 FPS | 41.67 ms | 20.83 ms |
| 25 FPS | 40.00 ms | 20.00 ms |
| 30 FPS | 33.33 ms | 16.67 ms |
| 45 FPS | 22.22 ms | 11.11 ms |
| 48 FPS | 20.83 ms | 10.42 ms |
| 50 FPS | 20.00 ms | 10.00 ms |
| 60 FPS | 16.67 ms | 8.33 ms |
| 72 FPS | 13.89 ms | 6.94 ms |
| 75 FPS | 13.33 ms | 6.67 ms |
| 90 FPS | 11.11 ms | 5.56 ms |
| 100 FPS | 10.00 ms | 5.00 ms |
| 120 FPS | 8.33 ms | 4.17 ms |
| 144 FPS | 6.94 ms | 3.47 ms |
| 165 FPS | 6.06 ms | 3.03 ms |
| 180 FPS | 5.56 ms | 2.78 ms |
| 200 FPS | 5.00 ms | 2.50 ms |
| 240 FPS | 4.17 ms | 2.08 ms |
| 280 FPS | 3.57 ms | 1.79 ms |
| 300 FPS | 3.33 ms | 1.67 ms |
| 360 FPS | 2.78 ms | 1.39 ms |
| 480 FPS | 2.08 ms | 1.04 ms |
Làm thế nào để đổi FPS sang mili-giây?
Lấy 1000 chia cho tốc độ khung hình. Một giây có 1000 mili-giây, vì vậy 60 FPS sẽ tương đương 1000 ÷ 60 = 16.67 ms mỗi khung hình. Để đổi ngược lại, lấy 1000 chia cho frame time.
1000 ÷ FPS = ms. Ví dụ 120 FPS là 8.33 ms.
1000 ÷ ms = FPS. Ví dụ 11.1 ms là 90 FPS.
Tại sao nên tính toán theo frame time thay vì FPS?
Vì mili-giây có tính chất cộng dồn trực tiếp, còn FPS thì không. Một khung cảnh tốn 8 ms cộng thêm hiệu ứng tốn 4 ms sẽ thành 12 ms — rất đơn giản. Phép tính tương tự với FPS không thể cộng trừ dễ dàng như vậy. Frame time cũng cho thấy rõ quy luật hiệu suất giảm dần: từ 30 lên 60 FPS tiết kiệm được 16.7 ms mỗi khung hình, nhưng từ 120 lên 240 FPS chỉ tiết kiệm được 4.2 ms. Dù cùng tăng gấp đôi FPS, nhưng lượng thời gian thực tiết kiệm được lại ít hơn tới 4 lần.
Quy tắc nửa khung hình (half-frame rule) là gì?
Cột thứ ba trong bảng là một nửa thời gian khung hình, và đây là mức quỹ thời gian an toàn mà nhiều người thực sự hướng đến. Mã nguồn của bạn không phải là thứ duy nhất chạy trong một khung hình — trình duyệt còn phải tính toán bố cục và vẽ (paint), bộ tổng hợp kết hợp các layer, và driver chuyển dữ liệu đến màn hình.
Frame time có giống với độ trễ (latency) không?
Không. Frame time là thời gian để tạo ra một khung hình. Còn độ trễ là khoảng thời gian từ lúc bạn thực hiện một thao tác cho đến khi kết quả hiển thị trên màn hình, bao gồm cả thiết bị đầu vào, hàng đợi khung hình, xử lý của màn hình và thời gian đổi màu điểm ảnh. Một tựa game đạt mức 8.33 ms hoàn hảo vẫn có thể có độ trễ toàn trình (end-to-end) lên đến 60 ms.
Có thể tính trung bình cộng tốc độ khung hình (FPS) không?
Không, và làm như vậy sẽ khiến kết quả trông đẹp hơn thực tế một cách sai lệch. Mười khung hình ở 100 FPS và mười khung hình ở 20 FPS không tương đương với 60 FPS — thực tế là mất 600 ms cho 20 khung hình, tức chỉ đạt 33 FPS. Hãy tính trung bình cộng frame time trước, sau đó mới quy đổi sang FPS. Đây là sai lầm phổ biến nhất trong các bài benchmark tự làm.
FAQ
Câu hỏi thường gặp
Frame time ở mức 60 FPS là bao nhiêu?
16.67 ms. Ở mức 30 FPS là 33.33 ms, 120 FPS là 8.33 ms và 144 FPS là 6.94 ms.
Mức frame time như thế nào là tốt?
Bằng hoặc thấp hơn chu kỳ làm tươi của màn hình và duy trì ổn định. Với màn hình 60 Hz là 16.67 ms; với 144 Hz là 6.94 ms.
Tại sao các nhà phát triển sử dụng frame time thay vì FPS?
Vì frame time có thể cộng dồn. Chi phí tài nguyên của từng tác vụ có thể tính trực tiếp bằng mili-giây, đồng thời giúp thấy rõ hiệu quả giảm dần khi tăng FPS lên các mức cao hơn.
Chỉ số 1% low tính theo mili-giây là gì?
Đó là cách nhìn từ góc độ khung hình chậm nhất: lấy 1% số khung hình chậm nhất và tính thời gian trung bình của chúng. Chỉ số 1% low đạt 33 ms có nghĩa là những khung hình tệ nhất của bạn chạy tương đương mức 30 FPS.
Công cụ này có hoạt động offline không?
Khi trang đã tải xong thì có — và bảng tham chiếu nằm trực tiếp trong HTML nên bạn vẫn có thể xem bình thường ngay cả khi tắt JavaScript.
Khám phá thêm
Công cụ khác
Tất cả công cụ đều chạy trực tiếp trên trình duyệt của bạn, hoàn toàn miễn phí và không cần đăng ký.
Chuyển đổi tốc độ khung hình
Nhập mức FPS, xem kết quả mili-giây và lưu lại bảng tra cứu cho công việc hàng ngày của bạn.
Sử dụng công cụ tính