WebGL 基准测试 - 我应该创建什么样的测试?

War*_*ith 5 javascript opengl benchmarking opengl-es webgl

(我不确定这是否应该在https://softwareengineering.stackexchange.com/ 上,如果您这么认为,请发表评论)

我即将为我的学士论文创建一个 WebGL 实现基准。我不确定我应该创建什么样的测试,以及我是否应该只测量每秒帧数,如果我可以获得一些其他有用的数据来进行基准测试......

目前我只是想过这样的测试:

  • 1个单色物体
  • 1个多色物体
  • 1个纹理对象
  • 1 个带混合纹理的对象
  • 1 个带闪电的纹理物体
  • 1 个具有多个照明点的纹理对象
  • 1 个场景渲染到纹理并在另一个对象上使用它
  • 1个模型动画
  • 具有更多对象的所有测试:50、500、5000
  • 每次渲染更改着色器/程序(一次、两次、多次)

这将导致 40 个不同的测试,但我不确定这些是否是对性能的重要测试。

一位朋友建议在复杂着色器上进行测试,但由于着色器在图形硬件上运行,因此与 Java 桌面应用程序应该没有区别,对吧?

无论如何,我的感觉是,JavaScript 的性能是 WebGL 的主要瓶颈。

更新

我终于做了我的测试。在讨论了基准测试的工作方式后,我创建了以下内容:http : //martin.cyor.eu/benchmark

tim*_*day 2

您选择的基准测试应取决于您打算如何处理基准分数(或者分数的目标受众是谁以及他们打算如何处理分数);据推测,它们应该影响某些决策 - 您应该从该决策开始,然后从该决策开始向后推算,以找出基准应该衡量的内容。

我想说你提议的列表属于基准测试范围的“综合”端;它们似乎对于具有分析器的 WebGL/浏览器实现者来说比试图在 WebGL 实现/平台之间进行选择以决定哪个可能最适合运行应用程序的人更有用(参见 OpenGL 基准测试的历史,其中所有在SPECviewperf出现并强加了一些现实世界的测试用例之前,过去对每秒合成多边形数的说法都是无稽之谈。