pub struct SubgroupMmaStoreMatrixOperation<'c> { /* private fields */ }
Expand description
A subgroup_mma_store_matrix
operation. GPU warp synchronous matrix store.
The gpu.subgroup_mma_store_matrix
operation stores a matrix collectively
using all the threads in a subgroup.
This operation takes a !gpu.mma_matrix
and a memref as operands.
!gpu.mma_matrix
is the source value containing the data to be stored into the
destination memref which can be in global or shared memory. The store address
is determined using the indices provided. The leadDimension
attribute
specifies the leading dimension of the destination matrix. If the
transpose
attribute is present then the op does a transposed store.
This op is often meant to be used along with gpu.subgroup_mma_load_matrix
and
gpu.subgroup_mma_compute
.
Example:
gpu.subgroup_mma_store_matrix %D, %sg[%i,%j] : { leadDimension = 32 : i32}
: !gpu.mma_matrix<16x16xf16, "COp">, memref<32x32xf16, 3>
Implementations§
source§impl<'c> SubgroupMmaStoreMatrixOperation<'c>
impl<'c> SubgroupMmaStoreMatrixOperation<'c>
sourcepub fn as_operation(&self) -> &Operation<'c>
pub fn as_operation(&self) -> &Operation<'c>
Returns a generic operation.
sourcepub fn builder(
context: &'c Context,
location: Location<'c>
) -> SubgroupMmaStoreMatrixOperationBuilder<'c, Unset, Unset, Unset, Unset>
pub fn builder( context: &'c Context, location: Location<'c> ) -> SubgroupMmaStoreMatrixOperationBuilder<'c, Unset, Unset, Unset, Unset>
Creates a builder.