Rate This Document
Findability
Accuracy
Completeness
Readability

gemm_s8u8s32_pack

Perform the pack operation on a matrix and store it in the allocated buffer.

That is, .

The value of op(X) may be . alpha and beta are multiplication coefficients; op(A) is an m*k matrix, op(B) is a k*n matrix, and C is an m*n matrix.

Interface Definition

C interface:

void cblas_gemm_s8u8s32_pack(const CBLAS_ORDER order, const enum CBLAS_IDENTIFIER identifier,

const CBLAS_TRANSPOSE trans, const BLASINT m, const BLASINT n, const BLASINT k,

const void *src, const BLASINT ld, void *dst);

Parameters

Parameter

Type

Description

Input/Output

order

Enumeration type CBLAS_ORDER

Whether the matrix is in row-major order or column-major order.

Input

identifier

Enumeration type CBLAS_IDENTIFIER

Matrix to be packed.

  • If identifier = CblasA, pack matrix A.
  • If identifier = CblasB, pack matrix B.

Input

trans

Enumeration type CBLAS_TRANSPOSE

Whether matrix A is a conventional matrix or a transposed matrix.

  • If trans = CblasNoTrans, .
  • If trans = CblasTrans, .

Whether matrix B is a conventional matrix or a transposed matrix.

  • If trans = CblasNoTrans, .
  • If trans = CblasTrans, .

Input

m

Integer

Number of rows of matrix op(A) and matrix C.

Input

n

Integer

Number of columns of matrix op(B) and matrix C.

Input

k

Integer

Number of columns of matrix op(A) and number of rows of matrix op(B).

Input

src

  • int8 type

Matrix A/B.

Input

ld

Integer

  • For column-major matrices, if identifier = CblasA and trans = CblasNoTrans, ld must be at least max(1, m); otherwise, it must be at least max(1, k).
  • For row-major matrices, if identifier = CblasA and trans = CblasNoTrans, ld must be at least max(1, k); otherwise, it must be at least max(1, m).
  • For column-major matrices, if identifier = CblasB and trans = CblasNoTrans, ld must be at least max(1, k); otherwise, it must be at least max(1, n).
  • For row-major matrices, if identifier = CblasB and trans = CblasNoTrans, ld must be at least max(1, n); otherwise, it must be at least max(1, k).

Input

dst

  • int8 type

Packed matrix A/B.

Input/Output

Dependency

#include "kblas.h"

Examples

See the example of gemm_?8?8s32_compute.