返回博客
2026年6月2日GPUtest.org2 分钟阅读

如何比较体积着色器测试,而不误读 FPS

固定 WebGL 着色器代码、相机和窗口尺寸进行比较,记录每次帧率结果的条件及测量边界。

Volume Shader BMVolume Shader显卡跑分着色器吞吐量

体积着色器跑分使用 WebGL 着色器绘制程序化场景。它适合观察同一浏览器中的特定渲染负载,不报告标准化显卡分数、TFLOPS、物理显存带宽或硬件温度。

比较前先固定负载

着色器每个像素执行的计算和输出像素数量都会影响表现。保存测试使用的代码,固定浏览器版本、窗口尺寸、缩放比例、相机位置及电源模式。代码或相机变化都可能改变负载,使两次结果无法直接比较。

先打开指南,再点击“开始测试”。交互工具可旋转、平移、缩放视角,编辑器可替换代码。记录期间不要修改它们。如果自定义代码编译失败,先恢复原始版本;编译错误本身不是 GPU 故障证据。

建立可以复查的记录

短暂预热后,在相同条件下重复观察三次,保留全部值,不只选最快的一次。可使用下面的空白模板:

日期和浏览器版本:
系统及电源模式:
窗口尺寸和页面缩放:
渲染器信息(若可获取):
着色器代码或保存版本:
相机设置:
观察时长:
第 1、2、3 次 FPS 记录:

这只是记录模板,不是实测数据。浏览器隐私设置可能隐藏渲染器字符串,该字符串也不是完整的物理硬件清单。

不要把刷新率限制当作性能上限

动画循环受浏览器调度影响。接近显示器刷新率的 FPS 可能已经被调度限制,即使 GPU 仍有余力。缩小窗口往往减少逐像素计算;因此增加的 FPS 属于另一个负载,不能和原窗口直接比较。

如果连续运行的结果下降,先排查竞争应用和电源设置。只有通过独立监控工具证实温度和频率变化,才有依据讨论温度降频。

把结论限定在实际问题上

合理的结论是“在记录的条件下,浏览器更新后同一着色器交付了更多帧”。“超频在所有游戏都稳定”超出了该测试能力。完成浏览器比较后,应在真正要使用的游戏、渲染器或其他应用中验证。

参阅测试方法及 requestAnimationFrame 文档了解计时边界。