Function: s8gemm

Applicability

Product

Supported (√/x)

Atlas A3 training products / Atlas A3 inference products

Atlas A2 training products / Atlas A2 inference products

Atlas training products

Atlas inference products

Atlas 200I/500 A2 inference products

Function Usage

Computes matrix-matrix multiplication: C = αAB + βC. The input data type is int8_t, and the output data type is int32_t. This API is asynchronous.

Prototype

  • C Prototype
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    aclError aclblasS8gemm(aclTransType transA,
    aclTransType transB,
    aclTransType transC,
    int m,
    int n,
    int k,
    const int32_t *alpha,
    const int8_t *matrixA,
    int lda,
    const int8_t *matrixB,
    int ldb,
    const int32_t *beta,
    int32_t *matrixC,
    int ldc,
    aclComputeType type,
    aclrtStream stream)
    
  • Python Function
    1
    2
    3
    4
    5
    6
    ret = acl.blas.s8gemm(trans_a, trans_b, trans_c,
    m, n, k,
    alpha, matrix_a, lda,
    matrix_b, ldb,
    beta, matrix_c, ldc,
    type, stream)
    

Parameter Description

Parameter

Description

trans_a

Int, whether matrix A is transposed.

trans_b

Int, whether matrix B is transposed.

trans_c

Int, whether matrix C is transposed. Currently, only aclTrans_N is supported.

m

Int, number of rows in matrix A and matrix C.

n

Int, number of columns in matrix B and matrix C.

k

Int, number of columns in matrix A and number of rows in matrix B.

alpha

Int, data pointer address of scalar alpha used for executing the multiplication operation.

matrix_a

Int, data pointer address of matrix A.

lda

Int, leading dimension of matrix A. For row-major transpose, lda is the number of columns of matrix A. This parameter is reserved and can only be set to –1.

matrix_b

Int, data pointer address of matrix B.

ldb

Int, leading dimension of matrix B. For row-major transpose, ldb is the number of columns of matrix B. This parameter is reserved and can only be set to –1.

beta

Int, data pointer address of scalar beta used for executing the multiplication operation.

matrix_c

Int, data pointer address of matrix C.

ldc

Int, leading dimension of matrix C. This parameter is reserved.

type

Int, computation precision.

stream

Int, stream where the operator is executed.

Return Value Description

Return Value

Description

ret

Int, error code: 0 on success; else, failure.

Reference

For the API call sequence, see API Call Sequence.