如何测量 WebGL 应用程序的图形内存使用情况
我见过几个用于分析 DirectX 和 OpenGL 应用程序的应用程序,这些应用程序可测量图形内存使用情况。我找不到任何与 WebGL 类似的东西。
我正在使用 WebGLInspector 来调试 WebGL 应用程序,但当前不支持图形内存分析。
是否有替代方法来跟踪 WebGL 应用程序的确切图形内存使用情况?
I have seen several applications to profile DirectX and OpenGL applications, which measure Graphic Memory Usage. I were not able to find anything similar for WebGL.
I am using WebGLInspector to debug WebGL applications, but Graphic Memory Profiling is currently not supported.
Is there an alternative to track the exact Graphic Memory Usage of a WebGL application?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
其一,目前无法使用 Javascript 进行查询。实际上存在一些安全问题,因为详细的 GPU 内存数据可用于在用户不知情的情况下创建用于跟踪的系统指纹。
但我猜您更关心调试自己的应用程序,而不是创建监视工具。对于 Chrome 来说,至少你可以从 about:memory 选项卡中获取一些信息。在那里你会看到一个“GPU”部分,它可以让你对浏览器的视频内存使用情况有一个非常高层次的了解。是的,这就是整个浏览器,而不仅仅是您的选项卡。但要确保您的选项卡是当时唯一运行的选项卡以获得更准确的统计数据并不难。
我确信这不是您想要的答案,但这就是我们目前所能得到的全部答案。毫无疑问,随着 WebGL 成为网络的更大组成部分,我们将为其开发更好的工具,但在那之前......欢迎成为早期采用者!
For one, there's no way to query that with Javascript at this point. There's actually some security concerns, in that detailed GPU memory data could be used to create a system fingerprint for tracking without the users knowledge.
But I'm guessing you're more concerned about debugging your own app, not creating a monitoring tool. For that in Chrome at least you can derive some information from the about:memory tab. In there you'll see a "GPU" section that gives you a really high-level idea of the video memory usage for the browser. Yeah, that's the whole browser, not just your tab. But it's not that hard to make sure your tab is the only one running at the time for more accurate stats.
I'm sure that's not the answer that you want, but it's all we've got for the moment. Undoubtedly as WebGL becomes a bigger part of the web we'll evolve better tools for it, but until then... welcome to being an early adopter!
您可以在chrome中通过更多工具->任务管理器查看GPU内存
You can view GPU Memory in chrome by More Tools->Task manager
在 Mac 上,有 OpenGL 驱动程序监视器,可让您跟踪 GPU 内存使用情况以及 GL 驱动程序正在执行的操作。在 Windows 上,您可以使用 DirectX 工具连接到 Chrome 的 GPU 进程。它应该为您提供有关 WebGL 活动的数据,就像 Windows Chrome 上使用 ANGLE OpenGL->DirectX 转换器来驱动 WebGL 一样。
On Mac, there's the OpenGL Driver Monitor that lets you track GPU memory use and what the GL driver is doing. On Windows, you could use the DirectX tools to hook up to Chrome's GPU process. It should give you data on the WebGL activity as on Windows Chrome is using the ANGLE OpenGL->DirectX translator to drive WebGL.