是否可以通过使用onload事件来测量gpu / cpu的性能?

时间:2014-01-04 09:15:55

标签: javascript performance javascript-events webgl onload

我正在尝试测量浏览器使用onload事件加载某种重图形所需的时间。

到目前为止,我只能测量加载某些图像所需的时间,但是我想使用这些测量结果区分客户端 - 因此需要更重的图形操作。

在这个问题上,是否可以在浏览器上测量某种重图形的加载时间? (也许是通过组合webgl?)

1 个答案:

答案 0 :(得分:3)

WebGL为您提供了在javascript和着色器之间建立连接的可能性。但它不提供有关设备性能的任何信息。

可以使用WebGL编写小程序,并通过FPS计算猜测客户端GPU性能(http://jsfiddle.net/vZP3u/)。使用很少的不同着色器可以进行有用的猜测。 但在某些情况下,测试可以被视为DOS攻击,浏览器不允许(不应该)允许您这样做(测试可能会破坏整个浏览器 - >人们不会访问您的网站)。

您也可以使用WebGL获取这些数据:http://analyticalgraphicsinc.github.io/webglreport/

摘要,原生javascript不提供有关设备的信息。您只能运行测试来猜测某些数据。您可以使用ajax 获取线索关于下载/上传速度,纯js用于CPU性能或WebGL着色器用于GPU性能。但是所有测试都非常依赖于客户端使用他的设备做什么。

此外,浏览器有时会提供获取某些数据的方法。例如G chrome console.memory,但不是crossbrowser方法如何得到一些东西。