VK_KHR_device_address_commands(3)

# VK_KHR_device_address_commands(3) Manual Page

## Name

VK_KHR_device_address_commands - device extension

## Registered Extension Number

319

## Revision

1

## Ratification Status

Ratified

## Extension and Version Dependencies

VK_KHR_get_physical_device_properties2
or
Vulkan Version 1.1
and
VK_KHR_buffer_device_address
or
Vulkan Version 1.2
and
VK_KHR_synchronization2
and
VK_EXT_extended_dynamic_state
or
Vulkan Version 1.3

## API Interactions

- Interacts with VK_VERSION_1_2

- Interacts with VK_AMD_buffer_marker

- Interacts with VK_EXT_conditional_rendering

- Interacts with VK_EXT_mesh_shader

- Interacts with VK_EXT_transform_feedback

- Interacts with VK_KHR_acceleration_structure

- Interacts with VK_KHR_draw_indirect_count

## Contact

- Tobias Hector [GitHub]tobski

## Extension Proposal

VK_KHR_device_address_commands

## Other Extension Metadata

Last Modified Date

  2026-03-10

Contributors

  - Tobias Hector, AMD

  - Matthew Netsch, Qualcomm Technologies, Inc

  - Jan-Harald Fredriksen, Arm

  - Mike Blumenkrantz, Valve

  - Allan MacKinnon, Google

  - Daniel Koch, NVIDIA

  - Autumn Ashton, Valve

  - Piers Daniell, NVIDIA

  - Stuart Smith, AMD

  - Caterina Shablia, Collabora

  - Piotr Byszewski, Cognizant

  - James Fitzpatrick, Imagination

  - Daniel Story, Nintendo

  - Baldur Karlsson, Valve

  - Jon Leech, Khronos

  - Samuel Pitoiset, Valve

  - Lionel Landwerlin, Intel

  - Hans-Kristian Arntzen, Valve

  - Žiga Markuš, LunarG

  - Spencer Fricke, Lunarg

  - Per Inge Mathisen, Arm

  - Vikram Kushwaha, NVIDIA

  - Ralph Potter, Samsung

  - Marijn Suijten, Traverse Research

  - Ricard Garcia, Igalia

  - Mengyang Liu, AMD

  - Artem Kharytoniuk, LunarG

  - Marty Johnson, Khronos

  - Alyssa Rosenzweig, Valve

## Description

This extension enables applications to use device addresses in place of buffer objects for most functionality.

## New Commands

- vkCmdBindIndexBuffer3KHR

- vkCmdBindVertexBuffers3KHR

- vkCmdCopyImageToMemoryKHR

- vkCmdCopyMemoryKHR

- vkCmdCopyMemoryToImageKHR

- vkCmdCopyQueryPoolResultsToMemoryKHR

- vkCmdDispatchIndirect2KHR

- vkCmdDrawIndexedIndirect2KHR

- vkCmdDrawIndirect2KHR

- vkCmdFillMemoryKHR

- vkCmdUpdateMemoryKHR

If VK_KHR_draw_indirect_count or Vulkan Version 1.2 and VK_EXT_mesh_shader is supported:

- vkCmdDrawMeshTasksIndirectCount2EXT

If VK_AMD_buffer_marker is supported:

- vkCmdWriteMarkerToMemoryAMD

If VK_EXT_conditional_rendering is supported:

- vkCmdBeginConditionalRendering2EXT

If VK_EXT_mesh_shader is supported:

- vkCmdDrawMeshTasksIndirect2EXT

If VK_EXT_transform_feedback is supported:

- vkCmdBeginTransformFeedback2EXT

- vkCmdBindTransformFeedbackBuffers2EXT

- vkCmdDrawIndirectByteCount2EXT

- vkCmdEndTransformFeedback2EXT

If VK_KHR_acceleration_structure is supported:

- vkCreateAccelerationStructure2KHR

If VK_KHR_draw_indirect_count or Vulkan Version 1.2 is supported:

- vkCmdDrawIndexedIndirectCount2KHR

- vkCmdDrawIndirectCount2KHR

## New Structures

- VkBindIndexBuffer3InfoKHR

- VkBindVertexBuffer3InfoKHR

- VkCopyDeviceMemoryImageInfoKHR

- VkCopyDeviceMemoryInfoKHR

- VkDeviceAddressRangeKHR

- VkDeviceMemoryCopyKHR

- VkDeviceMemoryImageCopyKHR

- VkDispatchIndirect2InfoKHR

- VkDrawIndirect2InfoKHR

- VkDrawIndirectCount2InfoKHR

- VkMemoryRangeBarrierKHR

- VkStridedDeviceAddressRangeKHR

- Extending VkDependencyInfo:

  - VkMemoryRangeBarriersInfoKHR

- Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:

  - VkPhysicalDeviceDeviceAddressCommandsFeaturesKHR

If VK_AMD_buffer_marker is supported:

- VkMemoryMarkerInfoAMD

If VK_EXT_conditional_rendering is supported:

- VkConditionalRenderingBeginInfo2EXT

If VK_EXT_transform_feedback is supported:

- VkBindTransformFeedbackBuffer2InfoEXT

If VK_KHR_acceleration_structure is supported:

- VkAccelerationStructureCreateInfo2KHR

## New Enums

- VkAddressCommandFlagBitsKHR

## New Bitmasks

- VkAddressCommandFlagsKHR

## New Enum Constants

- `VK_KHR_DEVICE_ADDRESS_COMMANDS_EXTENSION_NAME`

- `VK_KHR_DEVICE_ADDRESS_COMMANDS_SPEC_VERSION`

- Extending VkStructureType:

  - VK_STRUCTURE_TYPE_BIND_INDEX_BUFFER_3_INFO_KHR

  - VK_STRUCTURE_TYPE_BIND_VERTEX_BUFFER_3_INFO_KHR

  - VK_STRUCTURE_TYPE_COPY_DEVICE_MEMORY_IMAGE_INFO_KHR

  - VK_STRUCTURE_TYPE_COPY_DEVICE_MEMORY_INFO_KHR

  - VK_STRUCTURE_TYPE_DEVICE_MEMORY_COPY_KHR

  - VK_STRUCTURE_TYPE_DEVICE_MEMORY_IMAGE_COPY_KHR

  - VK_STRUCTURE_TYPE_DISPATCH_INDIRECT_2_INFO_KHR

  - VK_STRUCTURE_TYPE_DRAW_INDIRECT_2_INFO_KHR

  - VK_STRUCTURE_TYPE_DRAW_INDIRECT_COUNT_2_INFO_KHR

  - VK_STRUCTURE_TYPE_MEMORY_RANGE_BARRIERS_INFO_KHR

  - VK_STRUCTURE_TYPE_MEMORY_RANGE_BARRIER_KHR

  - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_ADDRESS_COMMANDS_FEATURES_KHR

If VK_AMD_buffer_marker is supported:

- Extending VkStructureType:

  - VK_STRUCTURE_TYPE_MEMORY_MARKER_INFO_AMD

If VK_EXT_conditional_rendering is supported:

- Extending VkStructureType:

  - VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_2_EXT

If VK_EXT_transform_feedback is supported:

- Extending VkAddressCommandFlagBitsKHR:

  - VK_ADDRESS_COMMAND_TRANSFORM_FEEDBACK_BUFFER_USAGE_BIT_KHR

  - VK_ADDRESS_COMMAND_UNKNOWN_TRANSFORM_FEEDBACK_BUFFER_USAGE_BIT_KHR

- Extending VkStructureType:

  - VK_STRUCTURE_TYPE_BIND_TRANSFORM_FEEDBACK_BUFFER_2_INFO_EXT

If VK_KHR_acceleration_structure is supported:

- Extending VkStructureType:

  - VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_2_KHR

## Version History

- Revision 1, 2026-03-10 (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