C Specification

The VkPipelineOfflineCreateInfo structure is defined as:

// Provided by VKSC_VERSION_1_0
typedef struct VkPipelineOfflineCreateInfo {
    VkStructureType           sType;
    const void*               pNext;
    uint8_t                   pipelineIdentifier[VK_UUID_SIZE];
    VkPipelineMatchControl    matchControl;
    VkDeviceSize              poolEntrySize;
} VkPipelineOfflineCreateInfo;

Members

  • sType is a VkStructureType value identifying this structure.

  • pNext is NULL or a pointer to a structure extending this structure.

  • pipelineIdentifier is an array of VK_UUID_SIZE uint8_t values representing an identifier for the pipeline.

  • matchControl is a VkPipelineMatchControl value specifying the type of identifier being used and how the match should be performed.

  • poolEntrySize is the size of the entry in pipeline memory to use for this pipeline. It must be a size that was requested via VkPipelinePoolSize when the device was created.

Description

If a match in the pipeline cache is not found then VK_ERROR_NO_PIPELINE_MATCH will be returned to the application.

If poolEntrySize is too small for the pipeline, or the number of entries for the requested pool size exceeds the reserved count for that pool size, pipeline creation will fail and VK_ERROR_OUT_OF_POOL_MEMORY will be returned by the corresponding vkCreate*Pipelines command.

Valid Usage
  • VUID-VkPipelineOfflineCreateInfo-poolEntrySize-05028
    poolEntrySize must be one of the sizes requested via VkPipelinePoolSize when the device was created

  • VUID-VkPipelineOfflineCreateInfo-recyclePipelineMemory-05029
    If VkPhysicalDeviceVulkanSC10Properties::recyclePipelineMemory is VK_TRUE, the number of currently existing pipelines created with this same value of poolEntrySize plus 1 must be less than or equal to the sum of the VkPipelinePoolSize::poolEntryCount values with the same value of poolEntrySize

  • VUID-VkPipelineOfflineCreateInfo-recyclePipelineMemory-05030
    If VkPhysicalDeviceVulkanSC10Properties::recyclePipelineMemory is VK_FALSE, the total number of pipelines ever created with this same value of poolEntrySize plus 1 must be less than or equal to the sum of the VkPipelinePoolSize::poolEntryCount values with the same value of poolEntrySize

Valid Usage (Implicit)
  • VUID-VkPipelineOfflineCreateInfo-sType-sType
    sType must be VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO

  • VUID-VkPipelineOfflineCreateInfo-matchControl-parameter
    matchControl must be a valid VkPipelineMatchControl value

See Also

Document Notes

For more information, see the Vulkan Specification

This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.

Copyright 2014-2023 The Khronos Group Inc.

SPDX-License-Identifier: CC-BY-4.0