Problem with limiting the maximum number of elements in the StorageBuffer

I’m having a problem with the size of my StorageBuffer, I currently have 4GB available on my GPU but I seem to be limited to a maximum size of 1GB.

I went to check the vulkan specifications of my GPU using: vulkaninfo --html

I could see that the maxStorageBufferRange = 1073741824

ssbo_bufferSize = sizeof(float) * (1’073’741’824 - 1) =~ 4.0Gb

So this corresponds to the maximum available on my GPU.

However, I realized that the limit on the number of StorageBuffer elements is exactly the same in practice as maxTexelBufferElements = 268435456

ssbo_bufferSize = sizeof(float) * (268’435’456 - 1) =~ 1.0Gb

if I add one more element the message: VK_ERROR_OUT_OF_DEVICE_MEMORY appears.

So this corresponds well to the maximum limit I’m encountering.

Would I have to modify or add a flag in particular to no longer be subject to the maxTexelBufferElements limitation for my StorageBuffer?

edit: there are no overflow problems:

VkDescriptorBufferInfo storageBufferInfo{};
storageBufferInfo.buffer = storageBuffers[i];
storageBufferInfo.offset = 0;
storageBufferInfo.range = VK_WHOLE_SIZE;