[Mesa-dev] [PATCH shader-db] si-report: Track max waves per CU

Marek Olšák maraeo at gmail.com
Tue Jan 5 07:25:43 PST 2016


On Tue, Jan 5, 2016 at 4:04 PM, Matt Arsenault <arsenm2 at gmail.com> wrote:
>
>> On Jan 5, 2016, at 07:28, Marek Olšák <maraeo at gmail.com> wrote:
>>
>> Hi,
>>
>> I'd like us to do this computation in Mesa, because it can be more
>> accurate there. The pixel shader wave count depends heavily on LDS,
>> because each interpolated input occupies 12 dwords of LDS per
>> primitive and there can be 1-16 primitives per wave. With 32 inputs
>> and 16 primitives, you can get 6144 dwords of LDS per wave and this is
>> without the extra LDS storage needed by derivatives. In a nutshell,
>> you need to know the number of interpolated inputs, then you can
>> compute the best case (1 primitive) scenario and the worst case (16
>> primitives).
>>
>> Marek
>>
>
> Are these dynamically known counts? I think having a statically known max waves would be useful (and noting that it is maximum static known) in addition to the dynamic from the runtime number of inputs.

The number of primitives is the only dynamically changing variable
that even Mesa doesn't know. It depends on geometry density and other
factors. We know it can be between 1 and 16 per wave and it varies
between waves too.

Marek


More information about the mesa-dev mailing list