[Mesa-dev] Extension to get Mesa IRs (Was: [Bug 91173])

Jose Fonseca jfonseca at vmware.com
Thu Jul 2 11:31:52 PDT 2015


On 02/07/15 17:49, Ilia Mirkin wrote:
> On Thu, Jul 2, 2015 at 12:40 PM, Jose Fonseca <jfonseca at vmware.com> wrote:
>> On 02/07/15 17:24, Ilia Mirkin wrote:
>>>
>>> On Thu, Jul 2, 2015 at 12:17 PM, Jose Fonseca <jfonseca at vmware.com> wrote:

>>> Ah OK. So I guess tilers will have to disable their render queues for
>>> this one. Which seems like a reasonable trade-off...
>>
>>
>> I don't see why.
>>
>> This is a purely SW query. So I don't see why the HW needs to see any
>> difference.
>
> It just won't have compiled the shaders, I think. I guess this could force it.

AFAIK, tiles defer the _rendering_, not the compilation. At least 
llvmpipe compiles everything at draw time.


>>
>> That said, glretrace already does glReadPixels when dumping state, so one
>> way or the other, when inspecting state in qapitrace, everything will be
>> flushed and and synched.
>
> But that's too late -- you said the glGetActiveBla would go right
> after the draw call. Presumably if you did it right after glReadPixels
> it'd end up seeing the state left over from a blit or something?

Fair enough. It's the first thing after glDraw. Forget about glReadpixels.

I guess just still don't understand what's special about tilers.  But I 
don't think it's pertinent now.

>
> Perhaps the API should instead be
>
> glEnable(GL_PROGRAM_SAVE_DUMP)
> glProgramDumpDebugInfo(progid, callback)
>
> which would then optionally dump any info associated with that
> program. That way it doesn't even have to be internally active (due to
> a subsequent blit or who-knows-what). But it would rely on that
> program having been previously-drawn-with which would have generated
> the relevant data.


Doing this immediately after draw call is no problem at all. I don't 
think it's worth complicating things by allowing a lag between draw and 
shader extraction. It just makes things more unreliable which defeats 
the point.

Jose



More information about the mesa-dev mailing list