[Mesa-dev] [PATCH 5/6] mesa: don't rebind constant buffers after every state change if GS is active

Eero Tamminen eero.t.tamminen at intel.com
Mon Jun 22 07:52:32 PDT 2015


On 06/18/2015 03:17 PM, Emil Velikov wrote:
> Strange I was under the impression that there are apps that make use
> of GS, albeit not too many.

So far I haven't seen any e.g. Steam game using GS, but Unreal Engine 4 

use them.  Of the 4 demos I checked, all compiled at least one geometry 
shader, Vehicle Game demo compiled three.

I didn't check what they use them for, in total they compile hundred(s) 
of shaders.

	- Eero

> On the perf side - I was thinking about the hardware (i.e. regardless
> if the driver does extra state-tracking or not) - would there be the
> optimisation mentioned, would there be a "stall" in the pipeline, due
> to the "new" values being flushed/fetched/etc. Now that I think about
> it, only a few of the HW guys may know the answer on this one, so
> don't bother with this.
> Thanks
> Emil
> On 16 June 2015 at 20:56, Marek Olšák <maraeo at gmail.com> wrote:
>> There are probably 0 apps using GS, so the answer is 0.
>> The hardware doesn't ignore anything. It only does what it's told to do.
>> The radeonsi driver doesn't check if the state change is redundant or not.
>> Marek
>> On Tue, Jun 16, 2015 at 10:13 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:
>>> Hi Marek,
>>> Out of curiosity:
>>> Any rough idea of how much of a perf. improvement this might bring ?
>>> Would the hardware ignore the newly (re)bound const. bufs, when the
>>> values are unchanged ?
>>> Thanks
>>> Emil
> _______________________________________________
> 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