[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Public WebGL] For review: ANGLE_timer_query extension

I've been told my by multiple people that APIs that can be used to spinwait are bad for _javascript_ and the browser in general.

The problem is people will do this


   // Spin Wait, blocking the browser and all UI processing  
   while (!getQueryParameter(RESULT_AVAILABLE));

It seems like queries should be based on callbacks.

On Tue, Apr 2, 2013 at 5:19 PM, Ben Vanik <benvanik@google.com> wrote:
The two APIs provide two different values -- glQueryCounter gives you a timestamp where glBeginQuery/glEndQuery give you a time elapsed. There are scenarios where both are interesting: if you're trying to get many elapsed times (such as timing draw calls/etc) then using the begin/end methods halves the number of query objects you need vs. trying to do it yourself via queryCounter. There's also the potential for the values retrieved from either to be different: the spec allows for different internal timing mechanisms to be used for both. I'm not sure if this is the case in reality, but it is allowed.

On Tue, Apr 2, 2013 at 5:03 PM, Kenneth Russell <kbr@google.com> wrote:
Good question. As the primary author of the ANGLE_timer_query
extension, Ben Vanik should answer it.

Note that beginQuery and endQuery will definitely be needed in the
OpenGL ES 3.0 upgrade, since they support occlusion and primitive


On Tue, Apr 2, 2013 at 4:51 PM, Arnaud, Remi <Remi.Arnaud@amd.com> wrote:
> I was wondering if beginQueryANGLE and endQueryANGLE are needed, seems
> like queryCounterANGLE alone can cover all use cases?
> Regards
> -- Remi
> On 4/2/13 4:33 PM, "Kenneth Russell" <kbr@google.com> wrote:
>>The MapsGL team has requested for some time that the ANGLE_timer_query
>>extension be exposed to WebGL. The primary use case is to allow tools
>>to be written which identify performance problems in WebGL
>>Please review the proposal and send comments to the list:
>>Note that the planned upgrade of WebGL to the OpenGL ES 3.0 API will
>>pull the query functions into the core. This extension becomes much
>>smaller when applied to that API version.
>>You are currently subscribed to public_webgl@khronos.org.
>>To unsubscribe, send an email to majordomo@khronos.org with
>>the following command in the body of your email:
>>unsubscribe public_webgl