37 #ifndef MMALIB_CNN_FULLYCONNECTEDBIAS_IXX_IXX_OXX_H_
38 #define MMALIB_CNN_FULLYCONNECTEDBIAS_IXX_IXX_OXX_H_
40 #include "../../common/MMALIB_types.h"
166 #if defined (__SE_FEAT_SPARSITY)
168 int8_t packetizeMode;
374 #if defined(__SE_FEAT_SPARSITY)
376 MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_packetizeWeights (
378 const void *restrict pWeights,
379 void *restrict pReorderWeights
411 uint64_t *idealCycles,
412 uint64_t *archCycles,
414 int32_t *caseNumber);
void MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_perfEst(MMALIB_kernelHandle handle, const MMALIB_bufParams2D_t *src0_addr, const MMALIB_bufParams2D_t *src1_addr, const MMALIB_bufParams2D_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.
int32_t MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_getHandleSize(MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_InitArgs *pKerInitArgs)
This is a query function to return the size of internal handle.
MMALIB_CNN_FULLYCONNECTEDBIAS_IXX_IXX_OXX_STATUS_NAME
Enumeration of different error codes for the MMALIB_CNN_FULLYCONNECTED kernel.
MMALIB_STATUS MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_init_checkParams(MMALIB_kernelHandle handle, const MMALIB_bufParams2D_t *src0_addr, const MMALIB_bufParams2D_t *src1_addr, const MMALIB_bufParams1D_t *src2_addr, const MMALIB_bufParams2D_t *dst_addr, const MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_InitArgs *pKerInitArgs)
This function checks the parameters and should be called before kernel execution. It can be called on...
MMALIB_STATUS MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_init(MMALIB_kernelHandle handle, const MMALIB_bufParams2D_t *src0_addr, const MMALIB_bufParams2D_t *src1_addr, const MMALIB_bufParams1D_t *src2_addr, const MMALIB_bufParams1D_t *src3_addr, const MMALIB_bufParams2D_t *dst_addr, const MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_InitArgs *pKerInitArgs)
This function call is required to initialize the handle. In this function most of the one time operat...
MMALIB_STATUS MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_exec(MMALIB_kernelHandle handle, const void *src0, const void *src1, const void *src2, const void *src3, const void *src4, void *dst, const MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_ExecInArgs *pKerExecInArgs, MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_ExecOutArgs *pKerExecOutArgs)
This function is the main compute function, and performs matrix-matrix multiplication.
MMALIB_STATUS MMALIB_CNN_fullyConnectedBias_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 executuon. It can be called on...
@ MMALIB_CNN_FULLYCONNECTEDBIAS_IXX_IXX_OXX_ERR_MAX
@ MMALIB_CNN_FULLYCONNECTEDBIAS_IXX_IXX_OXX_ERR_SMALL_K
MMALIB_STATUS_NAME
The enumeration of all status codes.
void * MMALIB_kernelHandle
Handle type for MMALIB operations.
This structure holds all the execution input parameters for the kernel.
bool multiPassX
Flag signifies feature matrix cannot be fit in memory; therefore, we process the matrix in chunks.
int32_t blockOffsetA
Offset of A matrix when kernel matrix is broken down in multi-pass case to pick appropriate block of ...
MMALIB_enableDynamicRange_type enableDynamicRange
Flag indicating whether to enable dynamic range (min,max) calculation.
bool writeCBuffer
Flag signifies when to write accumulated value out Cbuffer.
bool lastCall
Flag signifies last call to kernel when compute is broken down.
MMALIB_quantMethod_type quantMethod
Specify quantization method.
bool firstCall
Flag signifies first call to kernel when compute is broken down.
MMALIB_initDynamicRange_type initDynamicRange
Flag indicating whether to reset dynamic range (min,max) calculation at beginning of compute.
bool multiPassH
Flag signifies kernel matrix cannot be fit in memory; therefore, we process the matrix in chunks.
This structure holds all the runtime output parameters for the kernel.
int64_t dynamicRangeMin
Minimum computed value, controlled with MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_ExecInArgs::initDyn...
int64_t dynamicRangeMax
Minimum computed value, controlled with MMALIB_CNN_fullyConnectedBias_ixX_ixX_oxX_ExecInArgs::initDyn...
int32_t pSatMin
Min value for paramterized saturation.
void * bufCAccum_cn
Buffer pointer to hold partially accumulated values in multi-pass case.
int8_t activationType
Output activation type: Saturation or ReLU
int8_t funcStyle
Variant of the function refer to MMALIB_FUNCTION_STYLE
int32_t pSatMax
Max value for paramterized saturation.
bool multiPassX
flag signifies feature matrix cannot be fit in memory; therefore, compute is broken down by processi...
int32_t Ni
Value of used in natural C code only.
bool multiPassH
flag signifies kernel matrix cannot be fit in memory; therefore, compute is broken down by processin...
A structure for a 1 dimensional buffer descriptor.
A structure for a 2 dimensional buffer descriptor.