Structures
VkPhysicalDeviceShaderEnqueuePropertiesAMDX
Structure describing shader enqueue limits of an implementation
The VkPhysicalDeviceShaderEnqueuePropertiesAMDX
structure is defined
as:
typedef struct VkPhysicalDeviceShaderEnqueuePropertiesAMDX {
VkStructureType sType;
void* pNext;
uint32_t maxExecutionGraphDepth;
uint32_t maxExecutionGraphShaderOutputNodes;
uint32_t maxExecutionGraphShaderPayloadSize;
uint32_t maxExecutionGraphShaderPayloadCount;
uint32_t executionGraphDispatchAddressAlignment;
uint32_t maxExecutionGraphWorkgroupCount[3];
uint32_t maxExecutionGraphWorkgroups;
} VkPhysicalDeviceShaderEnqueuePropertiesAMDX;
The members of the VkPhysicalDeviceShaderEnqueuePropertiesAMDX
structure describe the following limits:
sType
is a VkStructureType value identifying this structure.pNext
isNULL
or a pointer to a structure extending this structure.-
maxExecutionGraphDepth
defines the maximum node chain depth in the graph. The dispatched node is at depth 1 and the node enqueued by it is at depth 2, and so on. If a node enqueues itself, each recursive enqueue increases the depth by 1 as well. maxExecutionGraphShaderOutputNodes
specifies the maximum number of unique nodes that can be dispatched from a single shader, and must be at least 256.maxExecutionGraphShaderPayloadSize
specifies the maximum total size of payload declarations in a shader. For any payload declarations that share resources, indicated byNodeSharesPayloadLimitsWithAMDX
decorations, the maximum size of each set of shared payload declarations is taken. The sum of each shared set’s maximum size and the size of each unshared payload is counted against this limit.maxExecutionGraphShaderPayloadCount
specifies the maximum number of output payloads that can be initialized in a single workgroup.executionGraphDispatchAddressAlignment
specifies the alignment of non-scratch VkDeviceAddress arguments consumed by graph dispatch commands.maxExecutionGraphWorkgroupCount
[3] is the maximum number of local workgroups that a shader can be dispatched with in X, Y, and Z dimensions, respectively.-
maxExecutionGraphWorkgroups
is the total number of local workgroups that a shader can be dispatched with.
If the VkPhysicalDeviceShaderEnqueuePropertiesAMDX
structure is included in the pNext
chain of the
VkPhysicalDeviceProperties2 structure passed to
vkGetPhysicalDeviceProperties2, it is filled in with each
corresponding implementation-dependent property.
Valid Usage (Implicit)
VUID-VkPhysicalDeviceShaderEnqueuePropertiesAMDX-sType-sType
sType
must be VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDX