21 #ifndef DSPLIB_MATMUL_IXX_IXX_OXX_PRIV_H_
22 #define DSPLIB_MATMUL_IXX_IXX_OXX_PRIV_H_
24 #include "../common/DSPLIB_utility.h"
39 #define DSPLIB_MATMUL_IXX_IXX_OXX_PBLOCK_SIZE (5 * SE_PARAM_SIZE)
90 template <
typename dataType>
123 template <
typename dataType>
146 template <
typename dataType>
195 template <
typename dataType>
202 template <
typename dataType>
206 void *restrict pOut);
208 template <
typename dataType>
215 template <
typename dataType>
219 void *restrict pOut);
DSPLIB_STATUS DSPLIB_matMul_exec_ci(DSPLIB_kernelHandle handle, void *restrict pIn1, void *restrict pIn2, void *restrict pOut)
This function is the main execution function for the C7x implementation of the kernel....
DSPLIB_STATUS DSPLIB_matMul_init_cn(DSPLIB_kernelHandle handle, DSPLIB_bufParams2D_t *bufParamsIn0, DSPLIB_bufParams2D_t *bufParamsIn1, DSPLIB_bufParams2D_t *bufParamsOut)
This function is the initialization function for the natural C implementation of the kernel....
DSPLIB_STATUS DSPLIB_matMul_generic_init_ci(DSPLIB_kernelHandle handle, const DSPLIB_bufParams2D_t *bufParamsIn0, const DSPLIB_bufParams2D_t *bufParamsIn1, const DSPLIB_bufParams2D_t *bufParamsOut, const DSPLIB_matMul_InitArgs *pKerInitArgs)
DSPLIB_STATUS DSPLIB_matMul_init_ci(DSPLIB_kernelHandle handle, const DSPLIB_bufParams2D_t *bufParamsIn0, const DSPLIB_bufParams2D_t *bufParamsIn1, const DSPLIB_bufParams2D_t *bufParamsOut, const DSPLIB_matMul_InitArgs *pKerInitArgs)
This function is the initialization function for the C7x implementation of the kernel....
DSPLIB_STATUS DSPLIB_matMul_exec_cn(DSPLIB_kernelHandle handle, void *restrict pIn1, void *restrict pIn2, void *restrict pOut)
This function is the main execution function for the natural C implementation of the kernel....
DSPLIB_STATUS DSPLIB_matMul_N_unroll_init_ci(DSPLIB_kernelHandle handle, const DSPLIB_bufParams2D_t *bufParamsIn0, const DSPLIB_bufParams2D_t *bufParamsIn1, const DSPLIB_bufParams2D_t *bufParamsOut, const DSPLIB_matMul_InitArgs *pKerInitArgs)
DSPLIB_STATUS DSPLIB_matMul_generic_exec_ci(DSPLIB_kernelHandle handle, void *restrict pIn0, void *restrict pIn1, void *restrict pOut)
DSPLIB_STATUS(* pFxnDSPLIB_matMul_exec)(DSPLIB_kernelHandle handle, void *restrict pIn1, void *restrict pIn2, void *restrict pOut)
Macro to define the size of bufPblock array of DSPLIB_matMul_PrivArgs structure.
DSPLIB_STATUS DSPLIB_matMul_N_unroll_exec_ci(DSPLIB_kernelHandle handle, void *restrict pIn0, void *restrict pIn1, void *restrict pOut)
#define DSPLIB_MATMUL_IXX_IXX_OXX_PBLOCK_SIZE
Macro to define the size of bufPblock array of DSPLIB_matMul_PrivArgs structure.
DSPLIB_STATUS_NAME DSPLIB_STATUS
Return value for DSPLIB functions.
DSPLIB_STATUS_NAME
The enumeration of all status codes.
void * DSPLIB_kernelHandle
Handle type for DSPLIB operations.
A structure for a 2 dimensional buffer descriptor.
Structure containing the parameters to initialize the kernel.
Structure that is reserved for internal use by the kernel.
pFxnDSPLIB_matMul_exec execute
Function pointer to point to the right execution variant between DSPLIB_matMul_exec_cn and DSPLIB_mat...
int32_t strideIn1Elements
int32_t strideIn0Elements
int32_t strideOutElements