81 #ifndef FFTLIB_LINALG_MATRIXMATRIXMULTIPLY_IXX_IXX_OXX_H_
82 #define FFTLIB_LINALG_MATRIXMATRIXMULTIPLY_IXX_IXX_OXX_H_
84 #include "../../common/FFTLIB_types.h"
304 uint64_t *archCycles,
306 int32_t *caseNumber);
void FFTLIB_LINALG_matrixMatrixMultiply_ixX_ixX_oxX_perfEst(FFTLIB_kernelHandle handle, const FFTLIB_bufParams2D_t *src0_addr, const FFTLIB_bufParams2D_t *src1_addr, const FFTLIB_bufParams2D_t *dst_addr, uint64_t *archCycles, uint64_t *estCycles, int32_t *caseNumber)
This function estimates the cycles consumed for the kernel execution.
FFTLIB_STATUS FFTLIB_LINALG_matrixMatrixMultiply_ixX_ixX_oxX_exec_checkParams(FFTLIB_kernelHandle handle, const void *src0, const void *src1, const void *dst)
This function checks the parameters and should be called before kernel executuon. It can be called on...
int32_t FFTLIB_LINALG_matrixMatrixMultiply_ixX_ixX_oxX_getHandleSize(FFTLIB_LINALG_matrixMatrixMultiply_ixX_ixX_oxX_InitArgs *pKerInitArgs)
This is a query function to return the size of internal handle.
FFTLIB_STATUS FFTLIB_LINALG_matrixMatrixMultiply_ixX_ixX_oxX_exec(FFTLIB_kernelHandle handle, const void *src0, const void *src1, void *dst)
This function is the main compute function, and performs matrix-matrix multiplication.
FFTLIB_STATUS FFTLIB_LINALG_matrixMatrixMultiply_ixX_ixX_oxX_init_checkParams(FFTLIB_kernelHandle handle, const FFTLIB_bufParams2D_t *src0_addr, const FFTLIB_bufParams2D_t *src1_addr, const FFTLIB_bufParams2D_t *dst_addr, const FFTLIB_LINALG_matrixMatrixMultiply_ixX_ixX_oxX_InitArgs *pKerInitArgs)
This function checks the parameters and should be called before kernel executuon. It can be called on...
FFTLIB_LINALG_MATRIXMATRIXMULTIPLY_IXX_IXX_OXX_STATUS_NAME
Enumeration of different error codes for the FFTLIB_LINALG_MATRIXMATRIXMULTIPLY kernel.
@ FFTLIB_LINALG_MATRIXMATRIXMULTIPLY_IXX_IXX_OXX_ERR_SMALL_K
@ FFTLIB_LINALG_MATRIXMATRIXMULTIPLY_IXX_IXX_OXX_ERR_MAX
FFTLIB_STATUS FFTLIB_LINALG_matrixMatrixMultiply_ixX_ixX_oxX_init(FFTLIB_kernelHandle handle, const FFTLIB_bufParams2D_t *src0_addr, const FFTLIB_bufParams2D_t *src1_addr, const FFTLIB_bufParams2D_t *dst_addr, const FFTLIB_LINALG_matrixMatrixMultiply_ixX_ixX_oxX_InitArgs *pKerInitArgs)
This function call is required to initialize the handle. In this function most of the one time operat...
void * FFTLIB_kernelHandle
Handle type for FFTLIB operations.
FFTLIB_STATUS_NAME
The enumeration of all status codes.
This structure holds all the initialization parameters for matrix- matrix multiplication.
int8_t shift
Output shift value.
A structure for a 2 dimensional buffer descriptor.