KomputeProject / kompute

General purpose GPU compute framework built on Vulkan to support 1000s of cross vendor graphics cards (AMD, Qualcomm, NVIDIA & friends). Blazing fast, mobile-enabled, asynchronous and optimized for advanced GPU data processing usecases. Backed by the Linux Foundation.
http://kompute.cc/
Apache License 2.0
2.02k stars 156 forks source link

Fix barrier in flag TestMultipleAlgoExecutions::SingleSequenceRecord #393

Closed robquill closed 3 months ago

robquill commented 3 months ago

Fixes this validation error:

VUID-vkCmdPipelineBarrier-pBufferMemoryBarriers-02817(ERROR / SPEC): msgNum: -541109872 - Validation Error: [ VUID-vkCmdPipelineBarrier-pBufferMemoryBarriers-02817 ] Object 0: handle = 0x55eb3e5027d0, type = VK_OBJECT_TYPE_COMMAND_BUFFER; | MessageID = 0xdfbf5190 | vkCmdPipelineBarrier(): pBufferMemoryBarriers[0].srcAccessMask (VK_ACCESS_TRANSFER_READ_BIT) is not supported by stage mask (VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT). The Vulkan spec states: For any element of pBufferMemoryBarriers, if its srcQueueFamilyIndex and dstQueueFamilyIndex members are equal, or if its srcQueueFamilyIndex is the queue family index that was used to create the command pool that commandBuffer was allocated from, then its srcAccessMask member must only contain access flags that are supported by one or more of the pipeline stages in srcStageMask, as specified in the table of supported access types (https://vulkan.lunarg.com/doc/view/1.3.280.0/linux/1.3-extensions/vkspec.html#VUID-vkCmdPipelineBarrier-pBufferMemoryBarriers-02817)