Intel® Math Kernel Library 2019 Developer Reference - C

cblas_?gemm_pack_get_size, cblas_gemm_*_pack_get_size

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

Syntax

MKL_INT cblas_sgemm_pack_get_size (const CBLAS_IDENTIFIER identifier, const MKL_INT m, const MKL_INT n, const MKL_INT k)

MKL_INT cblas_dgemm_pack_get_size (const CBLAS_IDENTIFIER identifier, const MKL_INT m, const MKL_INT n, const MKL_INT k)

MKL_INT cblas_gemm_s8u8s32_pack_get_size (const CBLAS_IDENTIFIER identifier, const MKL_INT m, const MKL_INT n, const MKL_INT k)

MKL_INT cblas_gemm_s16s16s32_pack_get_size (const CBLAS_IDENTIFIER identifier, const MKL_INT m, const MKL_INT n, const MKL_INT k)

Include Files

Description

The cblas_?gemm_pack_get_size and cblas_gemm_*_pack_get_size routines belong to a set of related routines that enable the use of an internal packed storage. Call the cblas_?gemm_pack_get_size and cblas_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 single and double precision or

C := alpha*(op(A)+ A_offset)*(op(B)+ B_offset) + beta*C + C_offset for integer type.

where:

Input Parameters

Parameter Type Description
identifier CBLAS_IDENTIFIER

Specifies which matrix is to be packed:

If identifier = CblasAMatrix, the size returned is the size required to store matrix A in an internal format.

If identifier = CblasBMatrix, the size returned is the size required to store matrix B in an internal format.

m MKL_INT

Specifies the number of rows of matrix op(A) and of the matrix C. The value of m must be at least zero.

n MKL_INT

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 MKL_INT

Specifies the number of columns of matrix op(A) and the number of rows of matrix op(B). The value of k must be at least zero.

Return Values

Parameter Type Description
size MKL_INT

Returns the size (in bytes) required to store the matrix when packed into the internal format of Intel MKL.

Example

See the following examples in the MKL installation directory to understand the use of these routines:

cblas_sgemm_pack_get_size: examples\cblas\source\cblas_sgemm_computex.c

cblas_dgemm_pack_get_size: examples\cblas\source\cblas_dgemm_computex.c

cblas_gemm_s8u8s32_pack_get_size: examples\cblas\source\cblas_gemm_s8u8s32_computex.c

cblas_gemm_s16u16s32_pack_get_size: examples\cblas\source\cblas_gemm_s16s16s32_computex.c

See Also