Skip to content

Vulkan validation errors for GPU clustering #25251

Description

@JMS55

Bevy version and features

0.20-dev, 25368b7

Freecamera Controls:
    Mouse       - Move camera orientation
    Scroll      - Adjust movement speed
    Right       - Hold to grab cursor
    KeyM        - Toggle cursor grab
    KeyW & KeyS - Fly forward & backwards
    KeyA & KeyD - Fly sideways left & right
    KeyE & KeyQ - Fly up & down
    ShiftLeft   - Fly faster while held
    [ControlLeft + ]Numpad7     - Snap to Up (+Y)/Down (-Y)
    [ControlLeft + ]Numpad3     - Snap to Right (+X)/Left (-X)
    [ControlLeft + ]Numpad1     - Snap to Front (-Z)/Back (+Z)
Validation Warning: [ VUID-vkCmdDispatch-storageBuffers-06936 ] | MessageID = 0xace7baff
[ Debug region: clustering::clustering allocation global pass ] vkCmdDispatch(): (set = 0, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0xd58f54000005aff7[bevy_render::render_resource::storage_buffer::StorageBuffer<bevy_pbr::cluster::GpuClusterOffsetsAndCountsStorage>]) size is 117504 bytes, 117504 bytes were bound, and the highest out of bounds access was at [118787] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (128, 0, 0)
Command buffer (clustering allocation global pass)(0x274fe6c07f0)
        Compute Dispatch Index 0
Pipeline (clustering allocation global pass pipeline)(cfe9ac000000bbf1)
Shader Module (3e827f000000aa66) (internal ID 1f)
SPIR-V Instruction Index = 242
Unable to source. Build shader with debug info to get source information.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for storageBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://vulkan.lunarg.com/doc/view/1.4.309.0/windows/antora/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-storageBuffers-06936)
Objects: 2
    [0] VkQueue 0x2742b34ada0
    [1] VkCommandBuffer 0x274fe6c07f0[clustering allocation global pass]

Validation Warning: [ VUID-vkCmdDispatch-storageBuffers-06936 ] | MessageID = 0xace7baff
[ Debug region: clustering::clustering allocation global pass ] vkCmdDispatch(): (set = 0, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0xd58f54000005aff7[bevy_render::render_resource::storage_buffer::StorageBuffer<bevy_pbr::cluster::GpuClusterOffsetsAndCountsStorage>]) size is 117504 bytes, 117504 bytes were bound, and the highest out of bounds access was at [118819] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (129, 0, 0)
Command buffer (clustering allocation global pass)(0x274fe6c07f0)
        Compute Dispatch Index 0
Pipeline (clustering allocation global pass pipeline)(cfe9ac000000bbf1)
Shader Module (3e827f000000aa66) (internal ID 1f)
SPIR-V Instruction Index = 242
Unable to source. Build shader with debug info to get source information.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for storageBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://vulkan.lunarg.com/doc/view/1.4.309.0/windows/antora/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-storageBuffers-06936)
Objects: 2
    [0] VkQueue 0x2742b34ada0
    [1] VkCommandBuffer 0x274fe6c07f0[clustering allocation global pass]

Validation Warning: [ VUID-vkCmdDispatch-storageBuffers-06936 ] | MessageID = 0xace7baff
[ Debug region: clustering::clustering allocation global pass ] vkCmdDispatch(): (set = 0, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0xd58f54000005aff7[bevy_render::render_resource::storage_buffer::StorageBuffer<bevy_pbr::cluster::GpuClusterOffsetsAndCountsStorage>]) size is 117504 bytes, 117504 bytes were bound, and the highest out of bounds access was at [118851] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (130, 0, 0)
Command buffer (clustering allocation global pass)(0x274fe6c07f0)
        Compute Dispatch Index 0
Pipeline (clustering allocation global pass pipeline)(cfe9ac000000bbf1)
Shader Module (3e827f000000aa66) (internal ID 1f)
SPIR-V Instruction Index = 242
Unable to source. Build shader with debug info to get source information.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for storageBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://vulkan.lunarg.com/doc/view/1.4.309.0/windows/antora/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-storageBuffers-06936)
Objects: 2
    [0] VkQueue 0x2742b34ada0
    [1] VkCommandBuffer 0x274fe6c07f0[clustering allocation global pass]

Validation Warning: [ VUID-vkCmdDispatch-storageBuffers-06936 ] | MessageID = 0xace7baff
[ Debug region: clustering::clustering allocation global pass ] vkCmdDispatch(): (set = 0, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0xd58f54000005aff7[bevy_render::render_resource::storage_buffer::StorageBuffer<bevy_pbr::cluster::GpuClusterOffsetsAndCountsStorage>]) size is 117504 bytes, 117504 bytes were bound, and the highest out of bounds access was at [118883] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (131, 0, 0)
Command buffer (clustering allocation global pass)(0x274fe6c07f0)
        Compute Dispatch Index 0
Pipeline (clustering allocation global pass pipeline)(cfe9ac000000bbf1)
Shader Module (3e827f000000aa66) (internal ID 1f)
SPIR-V Instruction Index = 242
Unable to source. Build shader with debug info to get source information.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for storageBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://vulkan.lunarg.com/doc/view/1.4.309.0/windows/antora/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-storageBuffers-06936)
Objects: 2
    [0] VkQueue 0x2742b34ada0
    [1] VkCommandBuffer 0x274fe6c07f0[clustering allocation global pass]

Validation Warning: [ VUID-vkCmdDispatch-storageBuffers-06936 ] | MessageID = 0xace7baff
[ Debug region: clustering::clustering allocation global pass ] vkCmdDispatch(): (set = 0, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0xd58f54000005aff7[bevy_render::render_resource::storage_buffer::StorageBuffer<bevy_pbr::cluster::GpuClusterOffsetsAndCountsStorage>]) size is 117504 bytes, 117504 bytes were bound, and the highest out of bounds access was at [118915] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (132, 0, 0)
Command buffer (clustering allocation global pass)(0x274fe6c07f0)
        Compute Dispatch Index 0
Pipeline (clustering allocation global pass pipeline)(cfe9ac000000bbf1)
Shader Module (3e827f000000aa66) (internal ID 1f)
SPIR-V Instruction Index = 242
Unable to source. Build shader with debug info to get source information.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for storageBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://vulkan.lunarg.com/doc/view/1.4.309.0/windows/antora/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-storageBuffers-06936)
Objects: 2
    [0] VkQueue 0x2742b34ada0
    [1] VkCommandBuffer 0x274fe6c07f0[clustering allocation global pass]

Validation Warning: [ VUID-vkCmdDispatch-storageBuffers-06936 ] | MessageID = 0xace7baff
[ Debug region: clustering::clustering allocation global pass ] vkCmdDispatch(): (set = 0, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0xd58f54000005aff7[bevy_render::render_resource::storage_buffer::StorageBuffer<bevy_pbr::cluster::GpuClusterOffsetsAndCountsStorage>]) size is 117504 bytes, 117504 bytes were bound, and the highest out of bounds access was at [118947] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (133, 0, 0)
Command buffer (clustering allocation global pass)(0x274fe6c07f0)
        Compute Dispatch Index 0
Pipeline (clustering allocation global pass pipeline)(cfe9ac000000bbf1)
Shader Module (3e827f000000aa66) (internal ID 1f)
SPIR-V Instruction Index = 242
Unable to source. Build shader with debug info to get source information.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for storageBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://vulkan.lunarg.com/doc/view/1.4.309.0/windows/antora/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-storageBuffers-06936)
Objects: 2
    [0] VkQueue 0x2742b34ada0
    [1] VkCommandBuffer 0x274fe6c07f0[clustering allocation global pass]

Validation Warning: [ VUID-vkCmdDispatch-storageBuffers-06936 ] | MessageID = 0xace7baff
[ Debug region: clustering::clustering allocation global pass ] vkCmdDispatch(): (set = 0, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0xae3c69000005b146[bevy_render::render_resource::storage_buffer::StorageBuffer<bevy_pbr::cluster::GpuClusterOffsetsAndCountsStorage>]) size is 117504 bytes, 117504 bytes were bound, and the highest out of bounds access was at [118787] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (128, 0, 0)
Command buffer (clustering allocation global pass)(0x274097d8650)
        Compute Dispatch Index 0
Pipeline (clustering allocation global pass pipeline)(cfe9ac000000bbf1)
Shader Module (3e827f000000aa66) (internal ID 1f)
SPIR-V Instruction Index = 242
Unable to source. Build shader with debug info to get source information.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for storageBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://vulkan.lunarg.com/doc/view/1.4.309.0/windows/antora/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-storageBuffers-06936)
Objects: 2
    [0] VkQueue 0x2742b34ada0
    [1] VkCommandBuffer 0x274097d8650[clustering allocation global pass]

Validation Warning: [ VUID-vkCmdDispatch-storageBuffers-06936 ] | MessageID = 0xace7baff
[ Debug region: clustering::clustering allocation global pass ] vkCmdDispatch(): (set = 0, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0xae3c69000005b146[bevy_render::render_resource::storage_buffer::StorageBuffer<bevy_pbr::cluster::GpuClusterOffsetsAndCountsStorage>]) size is 117504 bytes, 117504 bytes were bound, and the highest out of bounds access was at [118819] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (129, 0, 0)
Command buffer (clustering allocation global pass)(0x274097d8650)
        Compute Dispatch Index 0
Pipeline (clustering allocation global pass pipeline)(cfe9ac000000bbf1)
Shader Module (3e827f000000aa66) (internal ID 1f)
SPIR-V Instruction Index = 242
Unable to source. Build shader with debug info to get source information.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for storageBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://vulkan.lunarg.com/doc/view/1.4.309.0/windows/antora/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-storageBuffers-06936)
Objects: 2
    [0] VkQueue 0x2742b34ada0
    [1] VkCommandBuffer 0x274097d8650[clustering allocation global pass]

Validation Warning: [ VUID-vkCmdDispatch-storageBuffers-06936 ] | MessageID = 0xace7baff
[ Debug region: clustering::clustering allocation global pass ] vkCmdDispatch(): (set = 0, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0xae3c69000005b146[bevy_render::render_resource::storage_buffer::StorageBuffer<bevy_pbr::cluster::GpuClusterOffsetsAndCountsStorage>]) size is 117504 bytes, 117504 bytes were bound, and the highest out of bounds access was at [118851] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (130, 0, 0)
Command buffer (clustering allocation global pass)(0x274097d8650)
        Compute Dispatch Index 0
Pipeline (clustering allocation global pass pipeline)(cfe9ac000000bbf1)
Shader Module (3e827f000000aa66) (internal ID 1f)
SPIR-V Instruction Index = 242
Unable to source. Build shader with debug info to get source information.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for storageBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://vulkan.lunarg.com/doc/view/1.4.309.0/windows/antora/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-storageBuffers-06936)
Objects: 2
    [0] VkQueue 0x2742b34ada0
    [1] VkCommandBuffer 0x274097d8650[clustering allocation global pass]

Validation Warning: [ VUID-vkCmdDispatch-storageBuffers-06936 ] | MessageID = 0xace7baff
[ Debug region: clustering::clustering allocation global pass ] vkCmdDispatch(): (set = 0, binding = 0, index 0)  access out of bounds. The descriptor buffer (VkBuffer 0xae3c69000005b146[bevy_render::render_resource::storage_buffer::StorageBuffer<bevy_pbr::cluster::GpuClusterOffsetsAndCountsStorage>]) size is 117504 bytes, 117504 bytes were bound, and the highest out of bounds access was at [118883] bytes
Stage = Compute.  Global invocation ID (x, y, z) = (131, 0, 0)
Command buffer (clustering allocation global pass)(0x274097d8650)
        Compute Dispatch Index 0
Pipeline (clustering allocation global pass pipeline)(cfe9ac000000bbf1)
Shader Module (3e827f000000aa66) (internal ID 1f)
SPIR-V Instruction Index = 242
Unable to source. Build shader with debug info to get source information.
The Vulkan spec states: If any stage of the VkPipeline object bound to the pipeline bind point used by this command accesses a storage buffer, and that stage was created without enabling either VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS or VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 for storageBuffers, and the robustBufferAccess feature is not enabled, that stage must not access values outside of the range of the buffer as specified in the descriptor set bound to the same pipeline bind point (https://vulkan.lunarg.com/doc/view/1.4.309.0/windows/antora/spec/latest/chapters/dispatch.html#VUID-vkCmdDispatch-storageBuffers-06936)
Objects: 2
    [0] VkQueue 0x2742b34ada0
    [1] VkCommandBuffer 0x274097d8650[clustering allocation global pass]

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-RenderingDrawing game state to the screenC-BugAn unexpected or incorrect behavior

    Type

    No type

    Projects

    Status
    Needs SME Triage

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions