#Finding the debug utils marker on synchronization validation errors

5 messages · Page 1 of 1 (latest)

fallen bramble
#

Hi, I'm running into a validation error like such:

SYNC-HAZARD-WRITE-AFTER-WRITE(ERROR / SPEC): msgNum: 1544472022 - Validation Error: [ SYNC-HAZARD-WRITE-AFTER-WRITE ] Object 0: handle = 0x22655586390, type = VK_OBJECT_TYPE_QUEUE; | MessageID = 0x5c0ec5d6 | vkQueueSubmit():  Hazard WRITE_AFTER_WRITE for entry 0, VkCommandBuffer 0x22655d1de30[], Recorded access info (recorded_usage: SYNC_COPY_TRANSFER_WRITE, command: vkCmdCopyBuffer, seq_no: 25, reset_no: 5). Access info (prior_usage: SYNC_COPY_TRANSFER_WRITE, write_barriers: SYNC_RAY_TRACING_SHADER_ACCELERATION_STRUCTURE_READ|SYNC_ACCELERATION_STRUCTURE_BUILD_ACCELERATION_STRUCTURE_READ, ).
    Objects: 1
        [0] 0x22655586390, type: 4, name: NULL

Its not clear which vkCmdCopyBuffer this may be. I tried wrapping the likely parts of my code with vkCmdBeginDebugUtilsLabelEXT but it seems like this validation error specifically does not utilize such markers. Is there any other approach to see the debug utils label here ?

real crescent
#

Do you at least know which buffer (if not, you can name vulkan objects with the debug_utils)

#

You've got 2 transfer writes racing each other to the same buffer region. In between you do a barrier for acceleration structure stuff, but not transfer.

fallen bramble
#

@real crescent I don't know which buffer but I can start naming all of them anyways 🙂 . Though it is not clear to me where I'd see the name of the buffer in that message.

real crescent
#

VkCommandBuffer 0x22655d1de30[] in these square brackets I think