[Mesa-dev] [PATCH v5 01/70] mesa: set MAX_SHADER_STORAGE_BUFFERS to 15.
Samuel Iglesias Gonsálvez
siglesias at igalia.com
Tue Sep 15 22:18:10 PDT 2015
On 15/09/15 20:25, Kristian Høgsberg wrote:
> On Fri, Sep 11, 2015 at 08:12:13AM +0200, Iago Toral wrote:
>> On Thu, 2015-09-10 at 15:17 -0400, Ilia Mirkin wrote:
>>> On Thu, Sep 10, 2015 at 2:52 PM, Ian Romanick <idr at freedesktop.org> wrote:
>>>> On 09/10/2015 10:45 AM, Ilia Mirkin wrote:
>>>>> On Thu, Sep 10, 2015 at 9:35 AM, Iago Toral Quiroga <itoral at igalia.com> wrote:
>>>>>> From: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
>>>>>>
>>>>>> This patch sets the same value used for uniform buffers.
>>>>>>
>>>>>> Signed-off-by: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
>>>>>> ---
>>>>>> src/mesa/main/config.h | 2 +-
>>>>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/src/mesa/main/config.h b/src/mesa/main/config.h
>>>>>> index b35031d..69acd7d 100644
>>>>>> --- a/src/mesa/main/config.h
>>>>>> +++ b/src/mesa/main/config.h
>>>>>> @@ -171,7 +171,7 @@
>>>>>> #define MAX_PROGRAM_LOCAL_PARAMS 4096
>>>>>> #define MAX_UNIFORMS 4096
>>>>>> #define MAX_UNIFORM_BUFFERS 15 /* + 1 default uniform buffer */
>>>>>> -#define MAX_SHADER_STORAGE_BUFFERS 7 /* + 1 default shader storage buffer */
>>>>>> +#define MAX_SHADER_STORAGE_BUFFERS 15 /* + 1 default shader storage buffer */
>>>>>
>>>>> Is there such a thing as a default shader storage buffer? I would have
>>>>> assumed not, but haven't read the spec.
>>>>
>>>> Technically no, but I think (and I'm sure Ken will correct me) i965 uses
>>>> one for register spilling. Or is "scratch space" a different sort of thing?
>>>
>>> Sure, but that's a driver-specific thing. The MAX_UNIFORM_BUFFERS
>>> thing is in reference to the number of uniform buffers in the GL.
>>> MAX_SHADER_STORAGE_BUFFERS seems like it should be the same thing. Why
>>> not make it 16? Or perhaps leave it at 15 and remove the comment?
>>
>> Right, this is used to define the maximum number of binding points
>> available per shader stage. There is no such thing as a default shader
>> storage buffer that is different from the others, I think that comment
>> is just a copy&paste mistake. We can remove the comment and leave this
>> at 15, or round it up to 16 as you suggest. I'd go with the latter.
>>
>> Iago
>
> Yes, there's nothing in our hardware that limits the number of SSBOs,
> except the ~256 total entries limit in the binding table. I agree, go
> with 16 and drop the comment.
>
> Reviewed-by: Kristian Høgsberg <krh at bitplanet.net>
>
OK, thanks!
Sam
>>> With uniform buffers, there's a "default" uniform buffer, and then
>>> there are actual user ones.
>>
>>
>>
>>>>
>>>>>> /* 6 is for vertex, hull, domain, geometry, fragment, and compute shader. */
>>>>>> #define MAX_COMBINED_UNIFORM_BUFFERS (MAX_UNIFORM_BUFFERS * 6)
>>>>>> #define MAX_COMBINED_SHADER_STORAGE_BUFFERS (MAX_SHADER_STORAGE_BUFFERS * 6)
>>>>>> --
>>>>>> 1.9.1
>>>>>>
>>>>>> _______________________________________________
>>>>>> mesa-dev mailing list
>>>>>> mesa-dev at lists.freedesktop.org
>>>>>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>>>>> _______________________________________________
>>>>> mesa-dev mailing list
>>>>> mesa-dev at lists.freedesktop.org
>>>>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>>>>
>>>
>>
>>
>> _______________________________________________
>> mesa-dev mailing list
>> mesa-dev at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
> _______________________________________________
> 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