Function Prototype
vkGetPipelineIndirectMemoryRequirementsNV
Get the memory requirements for the compute indirect pipeline
To determine the memory requirements for a compute pipeline’s metadata, call:
void vkGetPipelineIndirectMemoryRequirementsNV(
VkDevice device,
const VkComputePipelineCreateInfo* pCreateInfo,
VkMemoryRequirements2* pMemoryRequirements);
deviceis the logical device that owns the buffer.pCreateInfois a VkComputePipelineCreateInfo structure specifying the creation parameters of the compute pipeline whose memory requirements are being queried.pMemoryRequirementsis a pointer to a VkMemoryRequirements2 structure in which the requested pipeline’s memory requirements are returned.
If pCreateInfo→pNext chain includes a pointer to a
VkComputePipelineIndirectBufferInfoNV structure, then the contents of
that structure are ignored.
Valid Usage
VUID-vkGetPipelineIndirectMemoryRequirementsNV-deviceGeneratedComputePipelines-09082
The VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV::deviceGeneratedComputePipelines
feature must be enabled
VUID-vkGetPipelineIndirectMemoryRequirementsNV-pCreateInfo-09083
pCreateInfo→flags must include
VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV
Valid Usage (Implicit)
VUID-vkGetPipelineIndirectMemoryRequirementsNV-device-parameter
device must be a valid VkDevice handle
VUID-vkGetPipelineIndirectMemoryRequirementsNV-pCreateInfo-parameter
pCreateInfo must be a valid pointer to a valid VkComputePipelineCreateInfo structure
VUID-vkGetPipelineIndirectMemoryRequirementsNV-pMemoryRequirements-parameter
pMemoryRequirements must be a valid pointer to a VkMemoryRequirements2 structure