vkCmdConvertCooperativeVectorMatrixNV
To convert a matrix to another layout and type, call:
void vkCmdConvertCooperativeVectorMatrixNV(
VkCommandBuffer commandBuffer,
uint32_t infoCount,
const VkConvertCooperativeVectorMatrixInfoNV* pInfos);
commandBufferis the command buffer into which the command will be recorded.infoCountis the number of layout conversions to perform.pInfosis a pointer to an array of VkConvertCooperativeVectorMatrixInfoNV structures containing information about the layout conversion.
This command does the same conversions as
vkConvertCooperativeVectorMatrixNV, but executes on the device.
One conversion is performed for each of the infoCount elements of
pInfos.
This command’s execution is synchronized using
VK_PIPELINE_STAGE_2_CONVERT_COOPERATIVE_VECTOR_MATRIX_BIT_NV.
Valid Usage
VUID-vkCmdConvertCooperativeVectorMatrixNV-pInfo-10083
For each element of pInfo, srcData::deviceAddress and
dstData::deviceAddress must be valid device addresses
VUID-vkCmdConvertCooperativeVectorMatrixNV-pInfo-10084
For each element of pInfo, srcData::deviceAddressmust be 64 byte aligned
VUID-vkCmdConvertCooperativeVectorMatrixNV-pInfo-10085
For each element of pInfo, dstData::deviceAddressmust be 64 byte aligned
VUID-vkCmdConvertCooperativeVectorMatrixNV-pInfo-10086
For each element of pInfo, srcSize must be large enough to
contain the source matrix, based either on the standard matrix layout or
based on the size filled out by vkConvertCooperativeVectorMatrixNV
VUID-vkCmdConvertCooperativeVectorMatrixNV-pInfo-10087
For each element of pInfo, the value pointed to by pDstSizemust be large enough to contain the destination matrix, based either on
the standard matrix layout or based on the size filled out by
vkConvertCooperativeVectorMatrixNV
VUID-vkCmdConvertCooperativeVectorMatrixNV-None-10088
Memory accessed by the sources and destinations of all of the conversions must not overlap
Valid Usage (Implicit)
VUID-vkCmdConvertCooperativeVectorMatrixNV-commandBuffer-parameter
commandBuffer must be a valid VkCommandBuffer handle
VUID-vkCmdConvertCooperativeVectorMatrixNV-pInfos-parameter
pInfos must be a valid pointer to an array of infoCount valid VkConvertCooperativeVectorMatrixInfoNV structures
VUID-vkCmdConvertCooperativeVectorMatrixNV-commandBuffer-recording
commandBuffer must be in the recording state
VUID-vkCmdConvertCooperativeVectorMatrixNV-commandBuffer-cmdpool
The VkCommandPool that commandBuffer was allocated from must support graphics, or compute operations
VUID-vkCmdConvertCooperativeVectorMatrixNV-renderpass
This command must only be called outside of a render pass instance
VUID-vkCmdConvertCooperativeVectorMatrixNV-videocoding
This command must only be called outside of a video coding scope
VUID-vkCmdConvertCooperativeVectorMatrixNV-infoCount-arraylength
infoCount must be greater than 0
Host Synchronization
- Host access to
commandBuffermust be externally synchronized - Host access to the
VkCommandPoolthatcommandBufferwas allocated from must be externally synchronized ::