[PATCH] Implement support for GPU timings of calls when proofiling with glretrace.

José Fonseca jose.r.fonseca at gmail.com
Thu Aug 2 10:19:02 PDT 2012


On Thu, Aug 2, 2012 at 2:39 AM, Carl Worth <cworth at cworth.org> wrote:
> Eric Anholt <eric at anholt.net> writes:
>> The issue I have right now with trying to do performance debug through
>> apitrace is I can't easily assign blame between the VS and FS of the
>> shader program that's taking all the GPU time.
> ...
>> trying to go into the trace and whack the FS source to just be
>> gl_FragData[0] = vec4(0, 1, 0, 0) (and updating the length argument in
>> the API call -- would be nice for that to be automatic).
>
> How about a mode for glretrace that replies twice, once with the FS
> source whacked as above. And then a script to appropriately combine the
> results of both runs.
>
> That should be easy to implement and avoids any of the difficulties with
> creating edited trace files.
>
> I'll plan to do that in the morning.
>
> -Carl (trying to announce plans in advance to avoid duplication of effort)

I don't object this, but it's not easy to do GLSL shader manipulation
reliably (without human intervention), without at least a GLSL
pre-processor and tokenizer.

Another solution would be to setup vertex stream output to skip FS.

But at the end of the day, ARB_timer_query is just too cumbersome for
accurate profiling, and we should have another extension that provides
fined grained measurements. I think that Intel is well positioned to
design and prototype such extension.

Jose


More information about the apitrace mailing list