21.08
|
Base class for all functions. More...
#include <IFunction.h>
Public Member Functions | |
virtual | ~IFunction ()=default |
Destructor. More... | |
virtual void | run ()=0 |
Run the kernels contained in the function. More... | |
virtual void | prepare () |
Prepare the function for executing. More... | |
Base class for all functions.
Definition at line 30 of file IFunction.h.
|
virtualdefault |
Destructor.
|
inlinevirtual |
Prepare the function for executing.
Any one off pre-processing step required by the function is handled here
Reimplemented in CLQLSTMLayer, CLLSTMLayer, CLConvolutionLayer, NEQLSTMLayer, NEConvolutionLayer, CLLSTMLayerQuantized, NELSTMLayer, CLDirectDeconvolutionLayer, CLGEMMConvolutionLayer, NELSTMLayerQuantized, CLGEMMDeconvolutionLayer, CLFFTConvolutionLayer, NEFullyConnectedLayer, CLWinogradConvolutionLayer, CLGEMMLowpMatrixMultiplyCore, NEDeconvolutionLayer, NEGEMMConvolutionLayer, NEFFTConvolutionLayer, FusedConvolutionBatchNormalizationFunction< TargetInfo, FusedLayerTypes >, FusedDepthwiseConvolutionBatchNormalizationFunction< TargetInfo, FusedLayerTypes >, CLDepthwiseConvolutionLayer, CLGEMM, NEGEMMConv2d, NEGEMMLowpMatrixMultiplyCore, NEDepthwiseConvolutionLayer, CLFullyConnectedLayer, CLDeconvolutionLayer, CLRNNLayer, NEWinogradConvolutionLayer, NERNNLayer, and NEGEMM.
Definition at line 57 of file IFunction.h.
|
pure virtual |
Run the kernels contained in the function.
For CPU kernels:
For OpenCL kernels:
Implemented in CLElementwisePower, CLElementwiseSquaredDiff, CLElementwiseMin, NEElementwiseComparisonStatic< op >, CLRoundLayer, CLElementwiseMax, NEElementwiseComparison, CLAbsLayer, NEElementwisePower, CLArithmeticDivision, CLLogLayer, NEElementwiseDivision, CLSinLayer, CLArithmeticSubtraction, CLQLSTMLayer, CLLSTMLayer, NEElementwiseSquaredDiff, CLSynthetizeFunctionInitOutputWithZeroAndWithZeroConstantBorder< K, bordersize >, CLNegLayer, CLConvolutionLayer, NEQLSTMLayer, NELogicalNot, CLComplexPixelWiseMultiplication, NEConvolutionLayer, NEComplexPixelWiseMultiplication, CLLSTMLayerQuantized, NELSTMLayer, NEElementwiseMin, CLDirectDeconvolutionLayer, CLGEMMConvolutionLayer, CLGenerateProposalsLayer, NELSTMLayerQuantized, CLExpLayer, CLGEMMDeconvolutionLayer, CLFFTConvolutionLayer, CLArithmeticAddition, NEFullyConnectedLayer, CLSpaceToBatchLayer, CLWinogradConvolutionLayer, NELogicalOr, CLBatchNormalizationLayer, CLCropResize, CLGEMMLowpMatrixMultiplyCore, NEDeconvolutionLayer, NEPixelWiseMultiplication, CLFuseBatchNormalization, NEGEMMConvolutionLayer, CLPixelWiseMultiplication, NEFFTConvolutionLayer, NEGenerateProposalsLayer, CLBatchToSpaceLayer, CLStridedSlice, CLDirectConvolutionLayer, CLConcatenateLayer, CLDepthConvertLayer, CLGEMMLowpOutputStage, CLInstanceNormalizationLayer, NEDirectConvolutionLayer, CLMaxUnpoolingLayer, CLDepthwiseConvolutionLayer, NESpaceToBatchLayer, CLCast, FusedConvolutionBatchNormalizationFunction< TargetInfo, FusedLayerTypes >, CLGEMM, CLReductionOperation, NEGEMMConv2d, NEGEMMLowpMatrixMultiplyCore, CLArgMinMaxLayer, CLCrop, CLPadLayer, NEBatchNormalizationLayer, FusedDepthwiseConvolutionBatchNormalizationFunction< TargetInfo, FusedLayerTypes >, CLActivationLayer, CLL2NormalizeLayer, CLNormalizationLayer, CLSlice, NEDepthwiseConvolutionLayer, CLSoftmaxLayerGeneric< IS_LOG >, NEFuseBatchNormalization, CLFullyConnectedLayer, CLStackLayer, CLDeconvolutionLayer, CLRNNLayer, NECropResize, NEPadLayer, CLScale, NEDetectionPostProcessLayer, CLQuantizationLayer, NEActivationLayer, CLDeconvolutionLayerUpsample, CLFFT1D, NEArgMinMaxLayer, NEStridedSlice, CLConvertFullyConnectedWeights, CLPoolingLayer, NEArithmeticSubtraction, CLPermute, CLPReluLayer, NEGEMMLowpOutputStage, NEInstanceNormalizationLayer, NEPoolingLayer, CLFFT2D, NEMaxUnpoolingLayer, NENormalizationLayer, NEReductionOperation, NEWinogradConvolutionLayer, NEConcatenateLayer, NERange, CLDequantizationLayer, NEL2NormalizeLayer, NERNNLayer, CLLogicalAnd, CLLogicalOr, CLReduceMean, NECast, NEFFT1D, NESlice, NEStackLayer, CLSpaceToDepthLayer, NEArithmeticAddition, NEDepthConvertLayer, NESoftmaxLayerGeneric< IS_LOG >, CLCopy, CLFlattenLayer, NEReduceMean, CLLogicalNot, CPPBoxWithNonMaximaSuppressionLimit, NEElementwiseMax, NEGEMM, CLRsqrtLayer, CLFill, CLFloor, CLUnstack, CPPDetectionPostProcessLayer, NEScale, NEPermute, NEUnstack, CLReshapeLayer, CLTranspose, NEFFT2D, NEPReluLayer, NEConvertFullyConnectedWeights, NEDequantizationLayer, NELogicalAnd, NESpaceToDepthLayer, NEElementwiseUnaryLayer< op >, NEFlattenLayer, NEFloor, NEQuantizationLayer, NECopy, NEROIPoolingLayer, NETranspose, NEReshapeLayer, NEFill, CPPDetectionOutputLayer, NEFillBorder, ICLSimpleFunction, INESimpleFunctionNoBorder, CLSplit, NESplit, INESimpleFunction, and ICPPSimpleFunction.