Class EXTPipelineProperties
One method of developing a Vulkan SC application is to author a Vulkan application and use a layer to record and serialize the pipeline state and shaders for offline compilation. Each pipeline is represented by a separate JSON file, and can be identified with a pipelineIdentifier.
Once the pipelines have been compiled by the offline pipeline cache compiler, the Vulkan SC application can then use this pipelineIdentifier for identifying the pipeline via Vulkan SC’s VkPipelineIdentifierInfo structure.
This extension allows the Vulkan application to query the pipelineIdentifier associated with each pipeline so that the application can store this with its pipeline metadata and the Vulkan SC application will then use to map the same state to an entry in the Vulkan SC pipeline cache.
It is expected that this extension will initially be implemented in the json generation layer, although we can envision that there might be future uses for it in native Vulkan drivers as well.
- Name String
VK_EXT_pipeline_properties- Extension Type
- Device extension
- Registered Extension Number
- 373
- Revision
- 1
- Extension and Version Dependencies
VK_KHR_get_physical_device_properties2or Version 1.1- Contact
- Mukund Keshava mkeshavanv
Other Extension Metadata
- Last Modified Date
- 2022-04-19
- IP Status
- No known IP claims.
- Contributors
- Mukund Keshava, NVIDIA
- Daniel Koch, NVIDIA
- Mark Bellamy, Arm
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final StringThe extension name.static final intThe extension specification version.static final intExtendsVkStructureType.static final intExtendsVkStructureType.static final intExtendsVkStructureType. -
Method Summary
Modifier and TypeMethodDescriptionstatic intnvkGetPipelinePropertiesEXT(org.lwjgl.vulkan.VkDevice device, long pPipelineInfo, long pPipelineProperties) Unsafe version of:GetPipelinePropertiesEXTstatic intvkGetPipelinePropertiesEXT(org.lwjgl.vulkan.VkDevice device, VkPipelineInfoEXT pPipelineInfo, @Nullable VkBaseOutStructure pPipelineProperties) Query pipeline properties.
-
Field Details
-
VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION
public static final int VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSIONThe extension specification version.- See Also:
-
VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME
The extension name.- See Also:
-
VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT
public static final int VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXTExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT
public static final int VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXTExtendsVkStructureType.Enum values:
- See Also:
-
VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT
public static final int VK_STRUCTURE_TYPE_PIPELINE_INFO_EXTExtendsVkStructureType.Enum values:
- See Also:
-
-
Method Details
-
nvkGetPipelinePropertiesEXT
public static int nvkGetPipelinePropertiesEXT(org.lwjgl.vulkan.VkDevice device, long pPipelineInfo, long pPipelineProperties) Unsafe version of:GetPipelinePropertiesEXT -
vkGetPipelinePropertiesEXT
public static int vkGetPipelinePropertiesEXT(org.lwjgl.vulkan.VkDevice device, VkPipelineInfoEXT pPipelineInfo, @Nullable VkBaseOutStructure pPipelineProperties) Query pipeline properties.C Specification
To query the pipeline properties call:
VkResult vkGetPipelinePropertiesEXT( VkDevice device, const VkPipelineInfoEXT* pPipelineInfo, VkBaseOutStructure* pPipelineProperties);Description
To query a pipeline’s
pipelineIdentifierpass aVkPipelinePropertiesIdentifierEXTstructure inpPipelineProperties. Each pipeline is associated with apipelineIdentifierand the identifier is implementation specific.Valid Usage
- The
pipelinemember ofpPipelineInfomust have been created withdevice pPipelinePropertiesmust be a valid pointer to aVkPipelinePropertiesIdentifierEXTstructure- The
pipelinePropertiesIdentifierfeature must be enabled
Valid Usage (Implicit)
devicemust be a validVkDevicehandlepPipelineInfomust be a valid pointer to a validVkPipelineInfoEXTstructure
Return Codes
- On success, this command returns
- On failure, this command returns
See Also
- Parameters:
device- the logical device that created the pipeline.pPipelineInfo- a pointer to aVkPipelineInfoEXTstructure which describes the pipeline being queried.pPipelineProperties- a pointer to aVkBaseOutStructurestructure in which the pipeline properties will be written.
- The
-