linalg::CoopMat<T, MemoryScope S, int M, int N, linalg.CoopMatMatrixUse R>.LoadCoherent
Description
Loads a cooperative matrix from a pointer buffer with coherent memory access. Ensures memory reads observe writes made visible across the specified memory scope. Vulkan only.
Signature
static linalg.CoopMat<T, S, M, N, R> linalg::CoopMat<T, MemoryScope S, int M, int N, linalg.CoopMatMatrixUseR>.LoadCoherent<linalg.CoopMatMatrixLayoutmatrixLayout>( Ptr<T, Access.ReadWrite, AddressSpace.Device> buffer, uint element, uint stride, MemoryScope memoryScope) where T : __BuiltinArithmeticType;
Generic Parameters
matrixLayout : linalg.CoopMatMatrixLayout
The memory layout (RowMajor or ColMajor) of the data in the buffer.
Parameters
buffer : Ptr<T, Access.ReadWrite, AddressSpace.Device>
The pointer to the buffer to load from.
element : uint
The starting element index in the buffer.
stride : uint
The stride in elements between consecutive rows (for row major) or columns (for column major).
memoryScope : MemoryScope
The scope from which writes should be visible (e.g., Device, Workgroup).
Return value
A cooperative matrix loaded from the buffer.
Availability and Requirements
Defined for the following targets:
spirv
Available in all stages.
Requires capabilities: spvCooperativeMatrixKHR, spvVulkanMemoryModelKHR, spvVulkanMemoryModelDeviceScopeKHR.