2.4.1 xfblasGemm - 2023.2 English

Vitis Libraries

Release Date
2023-12-20
Version
2023.2 English
xfblasStatus_t xfblasGemm(xfblasOperation_t transa, xfblasOperation_t transb, int m, int n, int k, int alpha, void* A, int lda, void* B, int ldb, int beta, void* C, int ldc, unsigned int kernelIndex = 0, unsigned int deviceIndex = 0)

This function performs the matrix-matrix multiplication C = alpha*op(A)op(B) + beta*C. See L3 examples for detail usage.

Parameters:

transa operation op(A) that is non- or (conj.) transpose
transb operation op(B) that is non- or (conj.) transpose
m number of rows in matrix A, matrix C
n number of cols in matrix B, matrix C
k number of cols in matrix A, number of rows in matrix B
alpha scalar used for multiplication
A pointer to matrix A in the host memory
lda leading dimension of matrix A
B pointer to matrix B in the host memory
ldb leading dimension of matrix B
beta scalar used for multiplication
C pointer to matrix C in the host memory
ldc leading dimension of matrix C
kernelIndex index of kernel that is being used, default is 0
deviceIndex index of device that is being used, default is 0

Return:

xfblasStatus_t 0 if the operation completed successfully
xfblasStatus_t 1 if the library was not initialized
xfblasStatus_t 3 if not all the matrices have FPGA devie memory allocated
xfblasStatus_t 4 if the engine is not supported for now