On 06/26/2015 10:55 AM, Chris Wilson wrote:
> On Fri, Jun 26, 2015 at 08:52:01AM +0300, Abdiel Janulgue wrote:
>> When hardware-generated binding tables are enabled, use the hw-generated
>> binding table format when uploading binding table state.
>>
>> Normally, the CS will will just consume the binding table pointer commands
>> as pipelined state. When the RS is enabled however, the RS flushes whatever
>> edited surface state entries of our on-chip binding table to the binding
>> table pool before passing the command on to the CS.
>>
>> Note that the the binding table pointer offset is relative to the binding 
>> table
>> pool base address when resource streamer instead of the surface state base 
>> address.
>>
>> v2: Fix possible buffer overflow when allocating a chunk out of the
>>     hw-binding table pool (Ken).
> 
> If I am reading this correctly, the binding table store offsets relative
> to the surface-state base address. It would seem that separating the
> surfaces into their own state bo would cut down on the amount of RS
> traffic (you would not need to reload the binding table bo every batch,
> nor change the entries as often). Right?

We tried this approach already around a couple of years ago*. Yes, it
did cut down the traffic but didn't offer any performance improvements.

-Abdiel

--
[*] http://lists.freedesktop.org/archives/mesa-dev/2013-October/046362.html
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to