VK_KHR_push_descriptor(3)

# VK_KHR_push_descriptor(3) Manual Page

## Name

VK_KHR_push_descriptor - device extension

Loading… please wait.

## Registered Extension Number

81

## Revision

2

## Ratification Status

Ratified

## Extension and Version Dependencies

VK_KHR_get_physical_device_properties2
or
Vulkan Version 1.1

## API Interactions

- Interacts with VK_VERSION_1_1

- Interacts with VK_KHR_descriptor_update_template

## Deprecation State

- Promoted to Vulkan 1.4

## Contact

- Jeff Bolz [GitHub]jeffbolznv

## Other Extension Metadata

Last Modified Date

  2017-09-12

IP Status

  No known IP claims.

Contributors

  - Jeff Bolz, NVIDIA

  - Michael Worcester, Imagination Technologies

## Description

This extension allows descriptors to be written into the command buffer, while the implementation is responsible for managing their memory. Push descriptors may enable easier porting from older APIs and in some cases can be more efficient than writing descriptors into descriptor sets.

## New Commands

- vkCmdPushDescriptorSetKHR

If Vulkan Version 1.1 or VK_KHR_descriptor_update_template is supported:

- vkCmdPushDescriptorSetWithTemplateKHR

## New Structures

- Extending VkPhysicalDeviceProperties2:

  - VkPhysicalDevicePushDescriptorPropertiesKHR

## New Enum Constants

- `VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME`

- `VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION`

- Extending VkDescriptorSetLayoutCreateFlagBits:

  - VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR

- Extending VkStructureType:

  - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR

If Vulkan Version 1.1 or VK_KHR_descriptor_update_template is supported:

- Extending VkDescriptorUpdateTemplateType:

  - VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR

## Promotion to Vulkan 1.4

Functionality in this extension is included in core Vulkan 1.4 with the KHR suffix omitted. The original type, enum, and command names are still available as aliases of the core functionality.

## Version History

- Revision 1, 2016-10-15 (Jeff Bolz)

  - Internal revisions

- Revision 2, 2017-09-12 (Tobias Hector)

  - Added interactions with Vulkan 1.1

## 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