11% GEMMI Compute matrix product using integer Ozaki scheme.
2- % C = GEMMI(A,B,ASPLITS,BSPLITS) computes the product A*B using
3- % the Ozaki scheme with ASPLITS slices for the matrix A and BSPLITS
4- % slices for the matrix B.
2+ % C = GEMMI(A,B,ASPLITS,BSPLITS,ALGORITHM) computes the product A*B
3+ % using the Ozaki scheme with ASPLITS and BSPLITS slices for the
4+ % matrices A and B, respectively. The ALGORITHM parameter must be
5+ % a struct, with the following fields currently supported.
6+ % 'split' - selects the stragegy to be used to split A and B into
7+ % slices. Possible values are 'b' for bitmasking and 'n
8+ % for round-to-nearest (default).
9+ % 'acc' - selects how the exact integer matrix products are
10+ % accumulated. Possible values are 'f' for floating-point
11+ % arithmetic and 'i' for integer accumulation (default).
12+ %
13+ % C = GEMMI(A,B,ASPLITS,BSPLITS) uses the last ALGORITHM parameter
14+ % in the most recent call to GEMMI, or the default values if no
15+ % previous call was made.
516%
617% C = GEMMI(A,B,SPLITS) uses SPLITS slices for both A and B.
718%
819% The splits are stored as 8-bit signed integer, the dot products are
920% performed using 32-bit signed arithmetic, and the final accumulation
10- % uses either binary32 or binary64 arithmetic, depending on the type
11- % of A and B .
21+ % uses either the same format as the matrices A and B (if 'acc' is 'f')
22+ % or 32-bit arithmetic (if 'acc' is 'i') .
1223%
1324% The matrices A and B must be conformable, and multiplication by a
1425% scalar is not supported.
0 commit comments