Function Prototype

vkGetPipelineExecutablePropertiesKHR

Get the executables associated with a pipeline

When a pipeline is created, its state and shaders are compiled into zero or more device-specific executables, which are used when executing commands against that pipeline. To query the properties of these pipeline executables, call:

VkResult vkGetPipelineExecutablePropertiesKHR(
    VkDevice                        device,
    const VkPipelineInfoKHR*        pPipelineInfo,
    uint32_t* pExecutableCount,
    VkPipelineExecutablePropertiesKHR* pProperties);
  • device is the device that created the pipeline.
  • pPipelineInfo describes the pipeline being queried.
  • pExecutableCount is a pointer to an integer related to the number of pipeline executables available or queried, as described below.
  • pProperties is either NULL or a pointer to an array of VkPipelineExecutablePropertiesKHR structures.

If pProperties is NULL, then the number of pipeline executables associated with the pipeline is returned in pExecutableCount. Otherwise, pExecutableCount must point to a variable set by the application to the number of elements in the pProperties array, and on return the variable is overwritten with the number of structures actually written to pProperties. If pExecutableCount is less than the number of pipeline executables associated with the pipeline, at most pExecutableCount structures will be written, and VK_INCOMPLETE will be returned instead of VK_SUCCESS, to indicate that not all the available properties were returned.

Valid Usage

VUID-vkGetPipelineExecutablePropertiesKHR-pipeline-03271

The pipeline member of pPipelineInfo must have been created with device

Valid Usage (Implicit)

VUID-vkGetPipelineExecutablePropertiesKHR-pPipelineInfo-parameter

pPipelineInfo must be a valid pointer to a valid VkPipelineInfoKHR structure

VUID-vkGetPipelineExecutablePropertiesKHR-pExecutableCount-parameter

pExecutableCount must be a valid pointer to a uint32_t value

VUID-vkGetPipelineExecutablePropertiesKHR-pProperties-parameter

If the value referenced by pExecutableCount is not 0, and pProperties is not NULL, pProperties must be a valid pointer to an array of pExecutableCount VkPipelineExecutablePropertiesKHR structures