From e753285cd38279c477ebd4a20d9cc56ab0fb7201 Mon Sep 17 00:00:00 2001 From: Andrey Miroshnikov Date: Mon, 6 Nov 2023 16:00:07 +0000 Subject: [PATCH] Added side-by-side table of the outer and inner product indices --- openpower/sv/cookbook/remap_matrix.mdwn | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/openpower/sv/cookbook/remap_matrix.mdwn b/openpower/sv/cookbook/remap_matrix.mdwn index 43c07da52..4be850ff1 100644 --- a/openpower/sv/cookbook/remap_matrix.mdwn +++ b/openpower/sv/cookbook/remap_matrix.mdwn @@ -167,6 +167,25 @@ The index for the result matrix changes with every operation, and thus the consecutive multiply-add instruction doesn't depend on the previous write register. +Outer and inner product indeces side-by-side: + +``` + | Outer Product | Inner Product | + | Mat X | Mat Y | Mat Z | Mat X | Mat Y | Mat Z | + | 0 | 0 | 0 | 0 | 0 | 0 | + | 1 | 2 | 0 | 0 | 1 | 1 | + | 2 | 4 | 0 | 3 | 0 | 2 | + | 0 | 1 | 1 | 3 | 1 | 3 | + | 1 | 3 | 1 | 1 | 2 | 0 | + | 2 | 5 | 1 | 1 | 3 | 1 | + | 3 | 0 | 2 | 4 | 2 | 2 | + | 4 | 2 | 2 | 4 | 3 | 3 | + | 5 | 4 | 2 | 2 | 4 | 0 | + | 3 | 1 | 3 | 2 | 5 | 1 | + | 4 | 3 | 3 | 5 | 4 | 2 | + | 5 | 5 | 3 | 5 | 5 | 3 | +``` + # SVP64 instructions implementing matrix multiply * SVP64 assembler example: -- 2.30.2