VK_AMDX_shader_enqueue(3)

# VK_AMDX_shader_enqueue(3) Manual Page

## Name

VK_AMDX_shader_enqueue - device extension

## Registered Extension Number

135

## Revision

2

## Ratification Status

Not ratified

## Extension and Version Dependencies

VK_KHR_synchronization2
and
VK_KHR_spirv_1_4
and
VK_EXT_extended_dynamic_state
or
Vulkan Version 1.3
and
VK_KHR_maintenance5
and
VK_KHR_pipeline_library

- This is a provisional extension and must be used with caution. See the description of provisional header files for enablement and stability details.

## API Interactions

- Interacts with VK_VERSION_1_4

- Interacts with VK_EXT_mesh_shader

- Interacts with VK_KHR_extended_flags

- Interacts with VK_KHR_maintenance5

## Contact

- Tobias Hector [GitHub]tobski

## Extension Proposal

VK_AMDX_shader_enqueue

## Other Extension Metadata

Last Modified Date

  2024-07-17

Provisional

  This extension is provisional and should not be used in production applications. The functionality may change in ways that break backwards compatibility between revisions, and before final release.

Contributors

  - Tobias Hector, AMD

  - Matthaeus Chajdas, AMD

  - Maciej Jesionowski, AMD

  - Robert Martin, AMD

  - Qun Lin, AMD

  - Rex Xu, AMD

  - Dominik Witczak, AMD

  - Karthik Srinivasan, AMD

  - Nicolai Haehnle, AMD

  - Stuart Smith, AMD

## Description

This extension adds the ability for developers to enqueue mesh and compute shader workgroups from other compute shaders.

## New Commands

- vkCmdDispatchGraphAMDX

- vkCmdDispatchGraphIndirectAMDX

- vkCmdDispatchGraphIndirectCountAMDX

- vkCmdInitializeGraphScratchMemoryAMDX

- vkCreateExecutionGraphPipelinesAMDX

- vkGetExecutionGraphPipelineNodeIndexAMDX

- vkGetExecutionGraphPipelineScratchSizeAMDX

## New Structures

- VkDispatchGraphCountInfoAMDX

- VkDispatchGraphInfoAMDX

- VkExecutionGraphPipelineCreateInfoAMDX

- VkExecutionGraphPipelineScratchSizeAMDX

- Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:

  - VkPhysicalDeviceShaderEnqueueFeaturesAMDX

- Extending VkPhysicalDeviceProperties2:

  - VkPhysicalDeviceShaderEnqueuePropertiesAMDX

- Extending VkPipelineShaderStageCreateInfo:

  - VkPipelineShaderStageNodeCreateInfoAMDX

## New Unions

- VkDeviceOrHostAddressConstAMDX

## New Enum Constants

- `VK_AMDX_SHADER_ENQUEUE_EXTENSION_NAME`

- `VK_AMDX_SHADER_ENQUEUE_SPEC_VERSION`

- VK_SHADER_INDEX_UNUSED_AMDX

- Extending VkBufferUsageFlagBits:

  - VK_BUFFER_USAGE_EXECUTION_GRAPH_SCRATCH_BIT_AMDX

- Extending VkPipelineBindPoint:

  - VK_PIPELINE_BIND_POINT_EXECUTION_GRAPH_AMDX

- Extending VkStructureType:

  - VK_STRUCTURE_TYPE_EXECUTION_GRAPH_PIPELINE_CREATE_INFO_AMDX

  - VK_STRUCTURE_TYPE_EXECUTION_GRAPH_PIPELINE_SCRATCH_SIZE_AMDX

  - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_FEATURES_AMDX

  - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDX

  - VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_NODE_CREATE_INFO_AMDX

If Vulkan Version 1.4 or VK_KHR_extended_flags or VK_KHR_maintenance5 is supported:

- Extending VkBufferUsageFlagBits2:

  - VK_BUFFER_USAGE_2_EXECUTION_GRAPH_SCRATCH_BIT_AMDX

- Extending VkPipelineCreateFlagBits2:

  - VK_PIPELINE_CREATE_2_EXECUTION_GRAPH_BIT_AMDX

## Version History

- Revision 2, 2024-07-17 (Tobias Hector)

  - Add mesh nodes

- Revision 1, 2021-07-22 (Tobias Hector)

  - Initial revision

## See Also

No cross-references are available

## Document Notes

For more information, see the Vulkan Specification.

This page is a generated document. Fixes and changes should be made to the generator scripts, not directly.

## Copyright

Copyright 2014-2026 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0