cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

dutta
Adept II

Vulkan - Descriptor set pool bug?

Hi!

I'm currently working on a Vulkan implementation of a game engine, and I've encountered an issue. When creating a descriptor set pool I can select a max size for the amount of sets allowed to be created. Although any value over 127 seems to be simply ignored, because whenever I try to run vkAllocateDescriptorSets I get VK_ERROR_INITIALIZATION_FAILED if the count reaches 127.

Is this the intended behavior, meaning that you are only supposed to use 127 descriptor sets? If so, is there a field in the VkPhysicalDeviceProperties that describe this depending on device? I thought the most efficient way to handle descriptor sets was to create a setup per (for example) a material and then simply stream update the buffers to provide new constant values when drawing.

Edit: I remembered there are validation layers in Vulkan which could be used to catch this sort of exception, however I'm still getting the same error although through the Vulkan debug callback:

vkAllocateDescriptorSets parameter, VkResult result, is VK_ERROR_INITIALIZATION_FAILED


The 127 number seemed a bit arbitrary though, because when I continued working on the code I got the same error at 52 descriptor sets. There seems to be either some uncaught exception or some error with the descriptor pool. I've tested this on an Nvidia GTX 770 and the problem doesn't occur there.

Meddelandet redigerades av: Gustav Sterbrant

0 Likes
1 Solution
pchiruma
Staff

dutta​ can you please check this with latest Public available driver ?

View solution in original post

0 Likes
3 Replies
pchiruma
Staff

dutta​ can you please check this with latest Public available driver ?

0 Likes

Tested it with the 16.15.2111 and it seems to be working fine! Thanks!

0 Likes

Thanks for the update

0 Likes