linalg::CoopMat<T, MemoryScope S, int M, int N, linalg.CoopMatMatrixUse R>.Reduce2x2

Description

Reduces the matrix in 2429496723542949671912 blocks using the specified combining operation. Requires Vulkan with SPV_NV_cooperative_matrix2 extension.

Signature

linalg.CoopMat<T, S, M/2, N/2, linalg.CoopMatMatrixUse.MatrixAccumulator> linalg::CoopMat<T, MemoryScope S, int M, int N, linalg.CoopMatMatrixUseR>.Reduce2x2(
    (T, T)->T combineOp)
    where T : ICoopElement;

Parameters

combineOp : ( T, T ) -> T

The binary function used to combine elements within each 2429496723542949671912 block.

Return value

A reduced accumulator matrix with dimensions (M/2)42949672354294967191(N/2).

Availability and Requirements

Defined for the following targets:

spirv

Available in all stages.

Requires capability: spvCooperativeMatrixReductionsNV.