使用 vsynctester.com 测刷新率和输入延迟时,结果受哪些因素影响?
更新时间
vsynctester.com 的测量结果主要受四类因素影响:浏览器本身的 VSYNC 与计时实现、显示器与系统的刷新率设置、后台负载与扩展程序、以及测试参数的配置方式。网站页面明确提示 Chrome 存在 VSYNC 问题、Firefox 在 Windows 下的 VSYNC 是“broken”、Edge 和 IE 不支持高刷新率显示器,因此浏览器选择是第一位的干扰源。建议在相同浏览器、相同窗口状态下多次测试,并对比图表形态而不是只读单一数值。
浏览器类型与版本:最大的系统性偏差
网站首页对主流浏览器给出了明确判断:
| 浏览器 | 网站给出的说法 | 对测试的含义 |
|---|---|---|
| Chrome | 存在 VSYNC 问题,页面提供专门的 Chrome bug 测试(会切换到更大的 44MP 背景图) | 测得的 VSYNC 偏移可能反映浏览器缺陷而非显示器状态 |
| Firefox | 计时器/VSYNC 等“hopelessly broken”,Windows 下 VSYNC 损坏,页面直接写“DO NOT USE” | 不建议用 Firefox 的结果判断显示器或输入延迟 |
| Edge / IE | 不支持高刷新率显示器 | 高 Hz 显示器上结果不可信 |
这意味着:如果你在 Firefox 或 Edge 上看到异常图表,先不要归因于显示器或显卡。想验证 Chrome 的问题,可以使用页面提供的 Chrome bug 测试入口(触发大背景图加载),观察图表是否出现对应变化。
显示器刷新率设置与系统状态
测试的前提是显示器实际运行在你认为的刷新率上。操作系统里的刷新率设置、多显示器下各屏独立刷新率、以及笔记本的电源/性能模式,都会改变实际输出帧率,从而让图表中的帧间隔和偏移整体偏移。
页面提供 Display Hz Tester 和 Older Display Hz test 两个独立入口,可用来交叉核对系统报告的 Hz 与实测值是否一致。如果两者对不上,先排查系统刷新率设置,而不是继续解读 VSYNC 图表。
后台负载、扩展程序与窗口状态
VSYNC 测试依赖 requestAnimationFrame 的时序精度,任何抢占主线程的因素都会污染结果:
- 其他标签页的动画、视频播放、大型页面渲染
- 浏览器扩展注入的脚本
- 系统级后台任务(下载、索引、录屏)
- 窗口被遮挡或最小化时,浏览器会降低 rAF 频率
页面本身提供了压力测试选项(背景图 MP 数、每帧滚动像素、丢帧比例等),这些选项的设计意图就是主动制造负载、观察图表如何劣化。反过来说,做基线测量时应关闭这些压力项,保持单一变量。
测试参数配置对读数的影响
页面可调参数较多,配置不当会让图表“看起来有问题”:
- Custom Hz(1–500)与 skew ms(0–25):手动指定目标刷新率与时序偏移,用于模拟特定条件;不设定时以实际显示为准。
- spin wait(1–9 ms)与 setTimeout 上限(9–50 ms):影响计时精度,spin wait 越长计时越精确但越占 CPU。
- Odd/Even frame pre-delay、post-delay(0–20 ms):人为插入帧延迟,用于观察图表响应。
- Drop 1 in every N frames(1–200):主动丢帧,用于验证图表能否识别丢帧。
- Mouse input lag indicator frames(0–9):控制鼠标延迟指示的帧数窗口。
做“我的显示器/浏览器是否正常”的判断时,应保持这些参数为默认或最小干扰状态;做压力验证时再逐项开启,并记录每项开启后图表哪条曲线发生变化。
图表怎么读:对比形态而非单一数值
页面图表包含多条曲线:VSYNC 指示、按 rAF 时间的 vsync 偏移(紫色)、锁定“late”的帧偏移(蓝色)、帧间隔(绿/红)、渲染时间(棕色)、spin-wait(灰色),右侧为毫秒刻度(1–100)。
判断结果是否可靠的方法:
- 连续测试多次,看同一曲线的形态是否稳定复现;
- 帧间隔曲线(绿/红)应基本平直,频繁红点说明存在丢帧或调度抖动;
- 偏移曲线若呈规律性锯齿,可能是浏览器 VSYNC 实现问题;若呈随机大幅跳动,更可能是后台负载;
- 换一个浏览器重复同样操作,对比差异是否与网站列出的浏览器缺陷描述一致。
单一数值(如某个瞬时偏移)不足以说明问题,多次测试下的曲线一致性才是可用的证据。