Guide

Volume Shader BM Test — Metodología

Cómo funciona el benchmark por dentro: modos, métricas, límites de precisión y lo que esta prueba no mide.

🚀 volumeshadertest
Ayer
5 min de lectura

Volume Shader BM Test es un benchmark pequeño y transparente. Esta página describe exactamente qué mide, los cuatro modos de prueba, las métricas del panel de resultados y los casos en los que el número que ves no es una comparación justa.

1. La pila de renderizado

La prueba se ejecuta completamente en WebGL 2.0 mediante un único fragment shader. No hay plugins nativos, extensiones auxiliares ni workers fuera de pantalla. Un vertex shader dibuja un único triángulo a pantalla completa; el fragment shader hace todo el trabajo para cada píxel en pantalla.

2. Qué hace el shader — raymarching con SDFs

En lugar de rasterizar polígonos, el fragment shader usa raymarching con Signed Distance Fields (SDFs). Para cada píxel, la GPU lanza un rayo virtual desde la cámara y lo avanza en pasos discretos hasta que alcanza una superficie definida por el SDF o sale de la escena. Cada paso evalúa todo el campo de distancia: un gran bloque de matemáticas que exige mucho a los núcleos de shader.

Es la misma técnica que explicamos en profundidad en nuestro análisis avanzado de raymarching en WebGL 2.0.

3. Modos de prueba

Hay cuatro modos disponibles. No son solo escalas de resolución: cada uno ejecuta una carga de shader diferente, por eso sus resultados no se pueden comparar directamente:

  • Light — menos pasos y menor resolución. Diseñado para que incluso GPUs móviles modestas puedan ejecutarlo con FPS utilizables como referencia.
  • Medium — número moderado de iteraciones y resolución nativa del canvas. Se parece a una carga de shader exigente "normal".
  • Heavy — más de 1.000 iteraciones de shader por píxel. Es donde la mayoría de las GPUs de escritorio caen en el rango de 30–60 FPS.
  • Extreme — llevado hasta el punto en que las GPUs dedicadas de gama alta empiezan a perder frames. Útil para clasificar la gama más alta; no para comparaciones casuales.

4. Métricas

  • Average FPS — frames por segundo durante toda la ejecución, ignorando el primer segundo (ver §6).
  • Min / Max FPS — la peor y la mejor ventana de 1 segundo durante la ejecución.
  • Frame time — milisegundos por frame. 60 FPS ≈ 16,7 ms; 30 FPS ≈ 33,3 ms.
  • Stability — qué tan consistente es el tiempo de frame durante la ejecución. Un número alto de estabilidad significa que tu GPU mantuvo el rendimiento; uno bajo significa que redujo frecuencia, fue interrumpida o compitió por recursos.

La guía de resultados FPS explica cómo interpretar estos niveles en términos cotidianos.

5. Los modos de prueba no se pueden comparar directamente

Cada modo tiene un presupuesto de bucle interno diferente. Un resultado de 45 FPS en Light y uno de 45 FPS en Heavy no describen el mismo trabajo de GPU. Al comparar dos dispositivos, ejecuta siempre el mismo modo en ambos, idealmente con el mismo navegador.

6. La primera ejecución es ruidosa a propósito

La primera vez que se carga la página, el navegador compila GLSL en un binario específico del driver. En algunos drivers esto tarda cientos de milisegundos y aparece como un tirón al inicio de la ejecución. Descarta el primer resultado y usa el segundo. Para comparar dispositivos, ejecuta la prueba dos veces en cada uno.

7. Los resultados móviles dependen de más que la GPU

Los benchmarks en teléfonos están dominados por el margen térmico y la política de energía del sistema operativo tanto como por el silicio bruto de la GPU. El ahorro de batería / modo de bajo consumo, el brillo de la pantalla, el material de la funda e incluso la forma de sujetar el dispositivo cambian la puntuación. Para comparaciones justas en teléfonos, conéctalo a la corriente, desactiva el ahorro de batería y prioriza stability sobre el pico de FPS. Consulta la guía de prueba de GPU para móviles para más detalles.

8. Qué no es esta prueba

Volume Shader BM Test mide el throughput de shader ALU en una carga sintética. Es excelente para detectar si un navegador, driver o dispositivo ha perdido una parte de capacidad de cálculo GPU. No es:

  • Un sustituto de un benchmark nativo como 3DMark, Geekbench GPU o GFXBench.
  • Un predictor de FPS en juegos: los juegos dependen mucho de draw calls y ancho de banda de texturas, no solo de shader ALU.
  • Una medida de ancho de banda de memoria, rendimiento de ray tracing o decodificación de video.

9. Privacidad

Todo el renderizado, conteo de FPS y agregación de resultados ocurre localmente en tu navegador. No recopilamos huellas de hardware, IDs de GPU ni resultados. Usamos servicios estándar de analítica y publicidad que pueden establecer cookies, pero ningún dato del benchmark sale de tu dispositivo.

Ejecuta la prueba

Iniciar prueba Volume Shader BM →

Relacionado

Etiquetas
MetodologíaTransparenciaCómo funciona