WebGL benchmark.
A rotating mesh of solid-colour triangles. We start at 10 000 triangles and double until your GPU drops below 60 fps — then report the maximum count it sustains. A modern dGPU passes 5 million; integrated graphics sits around 500 000; phones around 100 000.
Triangles use a single draw call with `gl.drawArrays(TRIANGLES, ...)` and a trivial vertex / fragment program — no textures, no overdraw. So we measure raw vertex pipeline + rasterizer throughput, not shader complexity. The WEBGL_debug_renderer_info extension exposes vendor / renderer when permitted, otherwise we fall back to UNMASKED extensions.