Skip to content

Commit eb8548a

Browse files
committed
Update documentation of MEX interface
1 parent e6b0036 commit eb8548a

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

mex/gemmi.m

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,25 @@
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

Comments
 (0)