跳转到主要内容

图形检测与计算

浏览器帧时间与帧率稳定性测试

测量浏览器逐帧回调间隔、平均值、中位数、P95、P99 和观察到的回调频率,建立低负载基线,并在本机下载原始采样数据。

更新日期:

测量浏览器帧间隔

通过一个简单移动的标记,记录低负载下的浏览器送帧基线。测试期间请保持本页面可见,并让窗口保持焦点。

正式采样前会先预热 1.5 秒。

预热与采样阶段会运行一个简单移动的标记。

已就绪。建议等其他浏览器操作结束后再开始。

如何理解这些数值

每个样本是预热结束后,两个 requestAnimationFrame 时间戳的正差值。平均值、中位数、P95、P99 使用所有有效间隔;百分位按 (n − 1) × p / 100 的位置做线性插值。至少需要 30 个有效间隔。P95 表示插值分布中 95% 的间隔不高于该数值。

回调频率 = 有效间隔数量 ÷ 有效间隔总时长。它反映浏览器调度,可能随其他标签页、电源设置和系统负载变化,不能测量 GPU 执行时间,也不能确认显示器的实际物理刷新率。

方法与结果说明

建立低负载的浏览器送帧基线

工具用简洁的移动标记与 requestAnimationFrame 时间戳记录回调间隔,不运行纹理压力负载。短暂预热后才开始采样。选择时长并保持标签页可见、窗口有焦点,在相同显示器和电源设置下重复比较。

观察到的回调频率通常跟随屏幕刷新调度,但不直接测量面板刷新率、像素响应、输入延迟或 GPU 执行时间。60 Hz 屏幕可能产生约 16.7 毫秒的回调间隔,浏览器、电源模式及系统调度都会影响这个节奏。

平均值、中位数、P95 与 P99 怎么看

平均帧时间是所有已记录间隔的平均值,中位数位于排序后序列的中间。P95、P99 描述较慢一端,数值较大意味着部分回调等待更久。百分位采用线性插值:在排序后的 n 个样本中,以 p × (n − 1) 为索引,p 为零到一之间的分位数。

例如多数间隔约为 16.7 毫秒、少数出现 50 毫秒时,中位数可能变化不大,P95 或 P99 则可能增大。这只是解释指标的假设示例,不是特定显卡应达到的数值。时间线帮助观察采样期间的变化。

采样质量与中断结果

至少需要 30 个有效帧间隔,工具才把样本量视为足够。短时停止或中断仍会标注在结果中,导出保留原始数据与原因。更多样本只能更好地描述本次运行,不能把测试变成硬件认证。

页面隐藏或窗口失去焦点时立即停止采样,并将运行标为受干扰。浏览器可能暂停或限制后台回调,不能把这类暂停当成显卡卡顿。返回当前页面后,重新开始以取得可比较的基线。

如何与纹理负载对比

先重复低负载测试,再保持浏览器、显示器、电源模式及后台应用不变,运行首页纹理负载。数值变化描述的是这些条件下浏览器送帧表现的变化,不能直接判断原因来自 CPU、GPU、合成器、驱动还是其他应用。

JSON 在本机生成,包含采样设置、结束状态、时序及浏览器环境,分享前请检查。图形 API 无法启动时使用能力报告;需要资源预算时使用纹理计算器。这项帧时间测试本身无需 WebGL。

技术参考

继续检查

GPU 纹理渲染测试