[Mesa-dev] [PATCH 0/9] gallium: batch query objects and related cleanups

Samuel Pitoiset samuel.pitoiset at gmail.com
Fri Nov 13 10:47:21 PST 2015



On 11/13/2015 07:29 PM, Nicolai Hähnle wrote:
> Hi Samuel,
>
> thanks for taking a look!
>
> On 13.11.2015 18:35, Samuel Pitoiset wrote:
>> Did you run amd_performance_monitor piglit tests to make sure all of
>> your changes didn't break anything?
>
> Yes, everything passes here.

Looks good. Thanks.

>
>
>> Did you test on nvc0 driver which is the only driver that currently
>> exposes GL_AMD_performance_monitor? In case you didn't, I'll test it
>> myself in the next few days. You might not have the hardware. :-)
>
> Sorry, I don't have the hardware.

That's not a problem, I'll test on NVIDIA GPUs.

>
> Thanks,
> Nicolai
>
>>
>> Thanks.
>>
>> On 11/13/2015 04:57 PM, Nicolai Hähnle wrote:
>>> Hi,
>>>
>>> the main point of this patch series is to introduce batch query objects.
>>>
>>> For AMD_performance_monitor, hardware may not be able to start and stop
>>> performance counters independently of each other. The current query
>>> interface
>>> does not fit such hardware well.
>>>
>>> With this series, drivers can mark driver-specific queries with the
>>> PIPE_DRIVER_QUERY_FLAG_BATCH flag, which indicates that those queries
>>> require
>>> the use of batch query objects. Batch query objects are created with an
>>> immutable list of queries, which requires a new entry point in
>>> pipe_context,
>>> but apart from that they use the same begin_query/end_query/etc. entry
>>> points.
>>>
>>> The radeon-specific part that actually makes use of this feature is
>>> not quite
>>> ready yet, but I already wanted to get this part out there for feedback.
>>> Please review!
>>>
>>> Thanks,
>>> Nicolai
>>> ---
>>>   gallium/auxiliary/hud/hud_context.c       |   24 ++
>>>   gallium/auxiliary/hud/hud_driver_query.c  |  249
>>> +++++++++++++++++++++++++-----
>>>   gallium/auxiliary/hud/hud_private.h       |   13 +
>>>   gallium/drivers/nouveau/nvc0/nvc0_query.c |    4
>>>   gallium/include/pipe/p_context.h          |    3
>>>   gallium/include/pipe/p_defines.h          |   36 ++--
>>>   mesa/state_tracker/st_cb_perfmon.c        |  247
>>> ++++++++++++++++-------------
>>>   mesa/state_tracker/st_cb_perfmon.h        |   32 +++
>>>   mesa/state_tracker/st_context.h           |    3
>>>   9 files changed, 437 insertions(+), 174 deletions(-)
>>>
>>> _______________________________________________
>>> mesa-dev mailing list
>>> mesa-dev at lists.freedesktop.org
>>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>>>
>>
>


More information about the mesa-dev mailing list