Bug 129090

Summary: WebGL EXT_disjoint_timer_query may now be implemented
Product: WebKit Reporter: Florian Bösch <pyalot>
Component: WebGLAssignee: Nobody <webkit-unassigned>
Severity: Normal CC: achristensen, bugmail, dino, jonlee, kdmitrenko, marcin.ignac, mmaxfield, pyalot, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
URL: http://www.khronos.org/registry/webgl/extensions/EXT_disjoint_timer_query/
Bug Depends on:    
Bug Blocks: 252388    

Description Florian Bösch 2014-02-20 01:58:30 PST
The WebGL extension EXT_disjoint_timer_query was moved to draft: http://www.khronos.org/registry/webgl/extensions/EXT_disjoint_timer_query/

Vendors are encouraged to consider implementation of this extension.
Comment 2 Florian Bösch 2014-02-28 02:38:10 PST
This extension can be implemented by a UA if either any one of these conditions is met:

- The OpenGL 3.3 core profile is supported: https://www.opengl.org/registry/doc/glspec33.core.20100311.pdf
- ARB_timer_query is supported: https://www.opengl.org/registry/specs/ARB/timer_query.txt
- Direct3D 9 is supported: http://msdn.microsoft.com/en-us/library/windows/desktop/bb147308(v=vs.85).aspx
- The OpenGL ES EXT_disjoint_timer_query is supported: http://www.khronos.org/registry/gles/extensions/EXT/EXT_disjoint_timer_query.txt

The disjoint behavior lacking from ARB_timer_query and OpenGL 3.3 core can be emulated by the UA.
Comment 3 Florian Bösch 2014-02-28 02:45:49 PST
The ANGLE project ticket possible used for tracking this feature: https://code.google.com/p/angleproject/issues/detail?id=142
Comment 4 Florian Bösch 2014-06-09 03:11:58 PDT
Any possibility that the iOS8 driver could be updated to include a way to support timer queries?

ES 3.0 doesn't contain timer queries, and the EXT_disjoint_timer_query extension is not listed for the iPad mini retina (PowerVR SGX543MP2) or iPod touch 5th gen (PowerVR SGX543MP2).

EXT_disjoint_timer_query is listed natively for the Nexus 4/Nexus 7/Asus PadFone X (Qualcomm Adreno 320), Nexus 5/Samsung SM-G870 (Qualcomm Adreno 330). The Xiamoi Minipad (NVIDIA Tegra) supports ES 3.1 which has timer queries.

Since the SGX543MP2 is a pretty powerful chip, it seems plausible to me the capability could be there in hardware.
Comment 5 Florian Bösch 2014-07-18 09:07:04 PDT
EXT_disjoint_timer query is desperately needed. Measuring performance by way of FPS is completely unusable, as it mostly just boils down to 3 answers, 15fps, 30fps or 60fps. Programmers can't measure their WebGL programs, and hence they cannot optimize them. This is extremely bad.
Comment 6 Marcin Ignac 2017-01-16 06:10:32 PST
Is there any chance of this being implemented? It has been shipped in Chrome and FF long time ago..
Comment 7 Radar WebKit Bug Importer 2017-01-17 10:13:57 PST
Comment 8 EWS 2023-02-16 08:25:08 PST
Committed 260367@main (dad993a38b59): <https://commits.webkit.org/260367@main>

Reviewed commits have been landed. Closing PR #10140 and removing active labels.