aclblasCreateHandleForGemmEx

Description

Creates a handle to matrix-matrix multiplication. The data types of the input and output are set using arguments. This API is synchronous.

After the handle is created, call aclopExecWithHandle to execute the operator.

Restrictions

A, B, and C support a limited combination of data types.

Data Type of A

Data Type of B

Data Type of C

aclFloat16

aclFloat16

aclFloat16

aclFloat16

aclFloat16

float(float32)

int8_t

int8_t

float(float32)

int8_t

int8_t

int32_t

Prototype

aclError aclblasCreateHandleForGemmEx(aclTransType transA,

aclTransType transB,

aclTransType transC,

int m,

int n,

int k,

aclDataType dataTypeA,

aclDataType dataTypeB,

aclDataType dataTypeC,

aclComputeType type,

aclopHandle **handle)

Parameters

Parameter

Input/Output

Description

transA

Input

Transpose flag of matrix A.

transB

Input

Transpose flag of matrix B.

transC

Input

Transpose flag of matrix C. Currently, only ACL_TRANS_N is supported.

m

Input

Number of rows in matrix A and matrix C.

n

Input

Number of columns in matrix B and matrix C.

k

Input

Number of columns in matrix A and number of rows in matrix B.

dataTypeA

Input

Data type of matrix A.

dataTypeB

Input

Data type of matrix B.

dataTypeC

Input

Data type of matrix C.

type

Input

Computation precision type (high precision by default).

handle

Output

Pointer to the pointer to the operator handle.

Returns

The value 0 indicates success, and other values indicate failure. For details, see aclError.