[Mesa-dev] [PATCH 0/7] gallium, radeonsi: raise number of samplers to 32

Bas Nieuwenhuizen bas at basnieuwenhuizen.nl
Thu Apr 7 10:28:48 UTC 2016


On Thu, Apr 7, 2016 at 12:11 PM, Marek Olšák <maraeo at gmail.com> wrote:
> On Thu, Apr 7, 2016 at 2:18 AM, Bas Nieuwenhuizen
> <bas at basnieuwenhuizen.nl> wrote:
>> Hi Nicolai,
>>
>> Patches 1-2 and 5-6 are
>>
>> Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
>>
>> However, for increasing the limits there are several cases which still
>> use signed shifts (i.e. 1 << ...) which is undefined behavior shifting
>> into bit 31. mesa/st contains several of those, not sure which need to
>> be updated due to having lower limits, but I would presume at least
>> st_glsl_to_tgsi.cpp needs updating.
>>
>> I will probably revisit using the constant engine once my compute
>> shader and robust_buffer_access_behavior work is mostly done. Tracking
>> some kind of highest used descriptor (probably better via shader
>> usage, as we can apply the correct bound checking during compilation),
>> is probably a good idea independently of CE usage. Uploading 2 KiB for
>> every texture change is indeed a bit much.
>
> The CE code should be able to do uploads at per-slot granularity.
> There is no reason to upload everything if you can do it fine-grained.


The upload to CE RAM can be per slot, but I think the CE RAM to L2
upload has to upload a complete new set of descriptors though, as the
previous draw still needs the old descriptors and we don't want to
flush the SMEM/constant L1 cache. I still need to test the bandwidth
of that upload though.

- Bas


More information about the mesa-dev mailing list