Developer Reference

  • 2020.2
  • 07/15/2020
  • Public Content
Contents

?gemm_pack_get_size
,
gemm_*_pack_get_size

Returns the number of bytes required to store the packed matrix.

Syntax

dest = sgemm_pack_get_size
(
identifier
,
m
,
n
,
k
)
dest = dgemm_pack_get_size
(
identifier
,
m
,
n
,
k
)
dest = gemm_s8u8s32_pack_get_size
(
identifier
,
m
,
n
,
k
)
dest = gemm_s16s16s32_pack_get_size
(
identifier
,
m
,
n
,
k
)
Include Files
  • mkl.fi
Description
The
?gemm_pack_get_size
and
gemm_*_pack_get_size
routines belong to a set of related routines that enable the use of an internal packed storage. Call the
?gemm_pack_get_size
and
gemm_*_pack_get_size
routines first to query the size of storage required for a packed matrix structure to be used in subsequent calls. Ultimately, the packed matrix structure is used to compute
C
:=
alpha
*op(
A
)*op(
B
) +
beta
*
C
for bfloat16, single and double precision or
C
:=
alpha
*(op(
A
)+
A_offset
)*(op(
B
)+
B_offset
) +
beta
*
C
+
C_offset
for integer type.
where:

    op(
    X
    )
    is one of the operations
    op(
    X
    ) =
    X
    or
    op(
    X
    ) =
    X
    T

    alpha
    and
    beta
    are scalars,

    A
    ,
    A_offset
    ,
    B
    ,
    B_offset
    ,
    C
    , and
    C_offset
    are matrices

    op(
    A
    )
    is an
    m
    -by-
    k
    matrix,

    op(
    B
    )
    is a
    k
    -by-
    n
    matrix,

    C
    is an
    m
    -by-
    n
    matrix.

    A_offset
    is an
    m
    -by-
    k
    matrix.

    B_offset
    is an
    k
    -by-
    n
    matrix.

    C_offset
    is an
    m
    -by-
    n
    matrix.

Input Parameters
Parameter
Type
Description
identifier
CHARACTER*1
.
Specifies which matrix is to be packed:
If
identifier
=
'A'
or
'a'
, the size returned is the size required to store matrix
A
in an internal format.
If
identifier
=
'B'
or
'b'
, the size returned is the size required to store matrix
B
in an internal format.
m
INTEGER
.
Specifies the number of rows of matrix op(
A
) and of the matrix
C
. The value of
m
must be at least zero.
n
INTEGER
.
Specifies the number of columns of matrix op(
B
) and the number of columns of matrix
C
. The value of
n
must be at least zero.
k
INTEGER
.