Structures
VkCooperativeMatrixProperties2EXT
Structure specifying cooperative matrix properties
The VkCooperativeMatrixProperties2EXT structure is defined as:
typedef struct VkCooperativeMatrixProperties2EXT {
VkStructureType sType;
void* pNext;
uint32_t MGranularity;
uint32_t NGranularity;
uint32_t KGranularity;
VkComponentTypeKHR AType;
VkComponentTypeKHR BType;
VkComponentTypeKHR CType;
VkComponentTypeKHR ResultType;
} VkCooperativeMatrixProperties2EXT;
pub struct CooperativeMatrixProperties2EXT {
s_type: vk::StructureType,
p_next: *mut c_void,
m_granularity: u32,
n_granularity: u32,
k_granularity: u32,
a_type: vk::ComponentTypeKHR,
b_type: vk::ComponentTypeKHR,
c_type: vk::ComponentTypeKHR,
result_type: vk::ComponentTypeKHR,
}
sTypeis a VkStructureType value identifying this structure.pNextisNULLor a pointer to a structure extending this structure.MGranularityis the granularity of the number of rows in matricesA,C, andResult. The rows must be an integer multiple of this value.KGranularityis the granularity of columns in matrixAand rows in matrixB. The columns/rows must be an integer multiple of this value.NGranularityis the granularity of columns in matricesB,C,Result. The columns must be an integer multiple of this value.ATypeis the component type of matrixA, of type VkComponentTypeKHR.BTypeis the component type of matrixB, of type VkComponentTypeKHR.CTypeis the component type of matrixC, of type VkComponentTypeKHR.ResultTypeis the component type of matrixResult, of type VkComponentTypeKHR.
If some types are preferred over other types (e.g. for performance), they should appear earlier in the list enumerated by vkGetPhysicalDeviceCooperativeMatrixProperties2EXT.
At least one entry in the list must have power of two values for all of
MGranularity, KGranularity, and NGranularity.
Valid Usage (Implicit)
VUID-VkCooperativeMatrixProperties2EXT-sType-sType
sType must be VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_2_EXT
VUID-VkCooperativeMatrixProperties2EXT-pNext-pNext
pNext must be NULL
Type
Structures