VK_KHR_pipeline_binary(3)

# VK_KHR_pipeline_binary(3) Manual Page

## Name

VK_KHR_pipeline_binary - device extension

## Registered Extension Number

484

## Revision

1

## Ratification Status

Ratified

## Extension and Version Dependencies

Vulkan Version 1.4
or
VK_KHR_extended_flags
or
VK_KHR_maintenance5

## Contact

- Stu Smith [GitHub]stu-s

## Extension Proposal

VK_KHR_pipeline_binary

## Other Extension Metadata

Last Modified Date

  2024-07-01

Contributors

  - Stu Smith, AMD

  - Tobias Hector, AMD

  - Alan Harrison, AMD

  - Maciej Jesionowski, AMD

  - Younggwan Kim, Arm

  - Jan-Harald Fredriksen, Arm

  - Ting Wei, Arm

  - Chris Glover, Google

  - Shahbaz Youssefi, Google

  - Jakub Kuderski, Google

  - Piotr Byszewski, Mobica

  - Piers Daniell, NVIDIA

  - Ralph Potter, Samsung

  - Matthew Netsch, Qualcomm

  - Hans-Kristian Arntzen, Valve

  - Samuel Pitoiset, Valve

  - Tatsuyuki Ishi, Valve

## Description

This extension provides a method to obtain binary data associated with individual pipelines such that applications can manage caching themselves instead of using VkPipelineCache objects.

## New Object Types

- VkPipelineBinaryKHR

## New Commands

- vkCreatePipelineBinariesKHR

- vkDestroyPipelineBinaryKHR

- vkGetPipelineBinaryDataKHR

- vkGetPipelineKeyKHR

- vkReleaseCapturedPipelineDataKHR

## New Structures

- VkPipelineBinaryCreateInfoKHR

- VkPipelineBinaryDataInfoKHR

- VkPipelineBinaryDataKHR

- VkPipelineBinaryHandlesInfoKHR

- VkPipelineBinaryKeyKHR

- VkPipelineBinaryKeysAndDataKHR

- VkPipelineCreateInfoKHR

- VkReleaseCapturedPipelineDataInfoKHR

- Extending VkDeviceCreateInfo:

  - VkDevicePipelineBinaryInternalCacheControlKHR

- Extending VkGraphicsPipelineCreateInfo, VkComputePipelineCreateInfo, VkRayTracingPipelineCreateInfoKHR:

  - VkPipelineBinaryInfoKHR

- Extending VkPhysicalDeviceFeatures2, VkDeviceCreateInfo:

  - VkPhysicalDevicePipelineBinaryFeaturesKHR

- Extending VkPhysicalDeviceProperties2:

  - VkPhysicalDevicePipelineBinaryPropertiesKHR

## New Enum Constants

- `VK_KHR_PIPELINE_BINARY_EXTENSION_NAME`

- `VK_KHR_PIPELINE_BINARY_SPEC_VERSION`

- VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR

- Extending VkObjectType:

  - VK_OBJECT_TYPE_PIPELINE_BINARY_KHR

- Extending VkPipelineCreateFlagBits2:

  - VK_PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR

- Extending VkResult:

  - VK_ERROR_NOT_ENOUGH_SPACE_KHR

  - VK_PIPELINE_BINARY_MISSING_KHR

- Extending VkStructureType:

  - VK_STRUCTURE_TYPE_DEVICE_PIPELINE_BINARY_INTERNAL_CACHE_CONTROL_KHR

  - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_FEATURES_KHR

  - VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR

  - VK_STRUCTURE_TYPE_PIPELINE_BINARY_CREATE_INFO_KHR

  - VK_STRUCTURE_TYPE_PIPELINE_BINARY_DATA_INFO_KHR

  - VK_STRUCTURE_TYPE_PIPELINE_BINARY_HANDLES_INFO_KHR

  - VK_STRUCTURE_TYPE_PIPELINE_BINARY_INFO_KHR

  - VK_STRUCTURE_TYPE_PIPELINE_BINARY_KEY_KHR

  - VK_STRUCTURE_TYPE_PIPELINE_CREATE_INFO_KHR

  - VK_STRUCTURE_TYPE_RELEASE_CAPTURED_PIPELINE_DATA_INFO_KHR

## Version History

- Revision 1, 2021-12-10 (Chris Glover)

  - Initial draft.

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