From 2580bb02f7a079ab1c0106b5960a21ed1627bca0 Mon Sep 17 00:00:00 2001 From: Jay Kwak <82421531+jkwak-work@users.noreply.github.com> Date: Thu, 15 May 2025 03:47:43 +0000 Subject: Add new coopmat2 functions: Reduce and Transpose (#7027) This commit adds three new functions for CoopMat as described in the proposal document, Cooperative matrix 2 proposal spec#12 The new functions are: CoopMat::Transpose CoopMat::ReduceRow CoopMat::ReduceColumn CoopMat::ReduceRowAndColumn CoopMat::Reduce2x2 --- tests/cooperative-matrix/array.slang | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'tests/cooperative-matrix/array.slang') diff --git a/tests/cooperative-matrix/array.slang b/tests/cooperative-matrix/array.slang index ab1f92a99..eb26bacbf 100644 --- a/tests/cooperative-matrix/array.slang +++ b/tests/cooperative-matrix/array.slang @@ -19,7 +19,9 @@ ByteAddressBuffer input2; //TEST_INPUT:ubuffer(stride=4, count=256):out,name=outputBuffer RWStructuredBuffer outputBuffer; -typealias CoopMatType = CoopMat; +using namespace linalg; + +typealias CoopMatType = CoopMat; [numthreads(32, 1, 1)] void computeMain() @@ -28,9 +30,9 @@ void computeMain() let matrixLayout = CoopMatMatrixLayout::RowMajor; CoopMatType coopMatArray[2]; - coopMatArray[0] = CoopMatType.load(input1, 0, stride, matrixLayout); - coopMatArray[1] = CoopMatType.load(input2, 0, stride, matrixLayout); + coopMatArray[0] = CoopMatType.Load(input1, 0, stride); + coopMatArray[1] = CoopMatType.Load(input2, 0, stride); - coopMatArray[0].store(outputBuffer, 0, stride, matrixLayout); - coopMatArray[1].store(outputBuffer, 4, stride, matrixLayout); + coopMatArray[0].Store(outputBuffer, 0, stride); + coopMatArray[1].Store(outputBuffer, 4, stride); } -- cgit v1.2.3