37 #ifndef MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_H_
38 #define MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_H_
40 #include "../../common/MMALIB_types.h"
287 uint64_t *idealCycles,
288 uint64_t *archCycles,
290 int32_t *caseNumber);
MMALIB_STATUS_NAME
The enumeration of all status codes.
void * MMALIB_kernelHandle
Handle type for MMALIB operations.
MMALIB_STATUS MMALIB_LINALG_matrixMatrixMultiplyBias_ixX_ixX_oxX_exec_checkParams(MMALIB_kernelHandle handle, const void *src0, const void *src1, const void *src2, const void *dst)
This function checks the parameters and should be called before kernel execution. It can be called on...
MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_STATUS_NAME
Enumeration of different error codes for the MMALIB_LINALG_matrixMatrixMultiply kernel.
MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_B_TRANSPOSE_STATUS
MMALIB_STATUS MMALIB_LINALG_matrixMatrixMultiplyBias_ixX_ixX_oxX_init_checkParams(MMALIB_kernelHandle handle, const MMALIB_bufParams3D_t *src0_addr, const MMALIB_bufParams3D_t *src1_addr, const MMALIB_bufParams2D_t *src2_addr, const MMALIB_bufParams3D_t *dst_addr, const MMALIB_LINALG_matrixMatrixMultiplyBias_ixX_ixX_oxX_InitArgs *pKerInitArgs)
This function checks the parameters and should be called before kernel execution. It can be called on...
MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_SCALE_SHIFT_ORDER
MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_SCALE_SHIFT_ENABLE_STATUS
MMALIB_STATUS MMALIB_LINALG_matrixMatrixMultiplyBias_ixX_ixX_oxX_exec(MMALIB_kernelHandle handle, const void *src0, const void *src1, const void *src2, const void *src3, const void *src4, void *dst)
This function is the main compute function, and performs matrix-matrix multiplication.
MMALIB_STATUS MMALIB_LINALG_matrixMatrixMultiplyBias_ixX_ixX_oxX_init(MMALIB_kernelHandle handle, const MMALIB_bufParams3D_t *src0_addr, const MMALIB_bufParams3D_t *src1_addr, const MMALIB_bufParams2D_t *src2_addr, const MMALIB_bufParams2D_t *src3_addr, const MMALIB_bufParams3D_t *dst_addr, const MMALIB_LINALG_matrixMatrixMultiplyBias_ixX_ixX_oxX_InitArgs *pKerInitArgs)
This function call is required to initialize the handle. In this function most of the one time operat...
MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_BIAS_ORDER
int32_t MMALIB_LINALG_matrixMatrixMultiplyBias_ixX_ixX_oxX_getHandleSize(MMALIB_LINALG_matrixMatrixMultiplyBias_ixX_ixX_oxX_InitArgs *pKerInitArgs)
This is a query function to return the size of internal handle.
void MMALIB_LINALG_matrixMatrixMultiplyBias_ixX_ixX_oxX_perfEst(MMALIB_kernelHandle handle, const MMALIB_bufParams3D_t *src0_addr, const MMALIB_bufParams3D_t *src1_addr, const MMALIB_bufParams3D_t *dst_addr, uint64_t *idealCycles, uint64_t *archCycles, uint64_t *estCycles, int32_t *caseNumber)
This function estimates the cycles consumed for the kernel execution.
@ MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_ERR_SMALL_K
@ MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_ERR_MAX
@ MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_B_TRANSPOSED
@ MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_B_NON_TRANSPOSED
@ MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_SCALE_SHIFT_ORDER_ROW
@ MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_SCALE_SHIFT_ORDER_COL
@ MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_SCALE_SHIFT_VECTOR
@ MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_SCALE_SHIFT_SCALAR
@ MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_BIAS_ORDER_COL
@ MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_IXX_OXX_BIAS_ORDER_ROW
int8_t funcStyle
Variant of the function refer to MMALIB_FUNCTION_STYLE
int8_t scaleShiftOrder
flag to indicate scale and shift order (row vector or column vector) MMALIB_LINALG_MATRIXMATRIXMULTIP...
int32_t pSatMax
Max value for paramterized saturation.
int32_t pSatMin
Min value for paramterized saturation.
bool scaleAndShiftFlag
flag to indicate whether the scale and shift are vectors or scalars MMALIB_LINALG_MATRIXMATRIXMULTIPL...
int8_t bTranspose
flag signifies whether the B matrix is transposed or not MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_I...
int8_t activationType
Output activation type: Saturation or ReLU MMALIB_activation_type_e.
int8_t biasOrder
flag to indicate bias order (row vector or column vector) MMALIB_LINALG_MATRIXMATRIXMULTIPLYBIAS_IXX_...
A structure for a 2 dimensional buffer descriptor.
A structure for a 3 dimensional buffer descriptor.