Как измерить использование графической памяти приложения WebGL

Я видел несколько приложений для профилирования приложений DirectX и OpenGL, которые измеряют использование графической памяти. Я не смог найти ничего похожего на WebGL.

Я использую WebGLInspector для отладки приложений WebGL, но в настоящее время профилирование графической памяти не поддерживается.

Есть ли альтернатива отслеживанию точного использования графической памяти приложения WebGL?

Ответ 1

Во-первых, нет способа запросить это с Javascript на этом этапе. На самом деле есть некоторые проблемы с безопасностью, поскольку подробные данные памяти GPU могут использоваться для создания системного отпечатка пальца для отслеживания без знания пользователей.

Но я предполагаю, что вас больше беспокоит отладка собственного приложения, а не создание средства мониторинга. Для этого в Chrome по крайней мере вы можете получить некоторую информацию из вкладки about: memory. Там вы увидите раздел "GPU", который дает вам действительно высокоуровневую идею использования видеопамяти для браузера. Да, весь браузер, а не только вкладка. Но это не так сложно, чтобы ваша вкладка была единственной, которая работала в то время для более точной статистики.

Я уверен, что не тот ответ, который вы хотите, но все, что у нас есть на данный момент. Несомненно, поскольку WebGL становится большей частью сети, мы разработаем для этого лучшие инструменты, но до тех пор... добро пожаловать в раннее усыновление!

Ответ 2

На Mac есть монитор драйверов OpenGL, который позволяет отслеживать использование памяти GPU и что делает драйвер GL. В Windows вы можете использовать инструменты DirectX для подключения к процессу Chrome GPU. Он должен предоставить вам данные о деятельности WebGL, так как в Windows Chrome используется ANGLE OpenGL- > DirectX-транслятор для управления WebGL.