21.02
|
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 CLGEMMConvolutionLayer, CLQLSTMLayer, NEGEMMConvolutionLayer, CLLSTMLayer, CLFullyConnectedLayer, CLGEMM, NEQLSTMLayer, CLConvolutionLayer, NEFullyConnectedLayer, CLLSTMLayerQuantized, NELSTMLayer, NEConvolutionLayer, NELSTMLayerQuantized, CLDirectDeconvolutionLayer, CLFFTConvolutionLayer, CLGEMMDeconvolutionLayer, CLWinogradConvolutionLayer, GCConvolutionLayer, NEDeconvolutionLayer, NEGEMMAssemblyDispatch, FusedConvolutionBatchNormalizationFunction< TargetInfo, FusedLayerTypes >, CLGEMMLowpMatrixMultiplyCore, NEGEMMLowpMatrixMultiplyCore, NEFFTConvolutionLayer, FusedDepthwiseConvolutionBatchNormalizationFunction< TargetInfo, FusedLayerTypes >, CLDepthwiseConvolutionLayer, NEGEMM, NEDepthwiseConvolutionAssemblyDispatch, NEGEMMConv2d, GCGEMM, GCFullyConnectedLayer, CLRNNLayer, NEDepthwiseConvolutionLayer, CLDeconvolutionLayer, NEWinogradConvolutionLayer, and NERNNLayer.
Definition at line 57 of file IFunction.h.
|
pure virtual |
Run the kernels contained in the function.
For Neon kernels:
For OpenCL kernels:
Implemented in CLElementwisePower, CLElementwiseSquaredDiff, CLElementwiseMin, CLElementwiseMax, NEElementwiseComparisonStatic< op >, CLRoundLayer, NEElementwiseComparison, CLComplexPixelWiseMultiplication, CLAbsLayer, CLArithmeticDivision, NEElementwisePower, CLLogLayer, CLGEMMConvolutionLayer, CLPixelWiseMultiplication, NEComplexPixelWiseMultiplication, CLArithmeticSubtraction, CLQLSTMLayer, NEGEMMConvolutionLayer, CLSinLayer, NEElementwiseDivision, CLLSTMLayer, NEPixelWiseMultiplication, CLFullyConnectedLayer, CLGEMM, NEQLSTMLayer, CLConvolutionLayer, NEFullyConnectedLayer, CLNegLayer, NEElementwiseSquaredDiff, CLLSTMLayerQuantized, NELSTMLayer, NEConvolutionLayer, NEGaussianPyramidOrb, CLSlice, CLGaussianPyramidOrb, CLArithmeticAddition, NELogicalNot, NELSTMLayerQuantized, CLDirectDeconvolutionLayer, CLGenerateProposalsLayer, NEStridedSlice, CLFFTConvolutionLayer, CLConvolutionSquare< matrix_size >, CLGEMMDeconvolutionLayer, CLOpticalFlow, CLWinogradConvolutionLayer, CLExpLayer, CLSpaceToBatchLayer, CLSynthetizeFunctionInitOutputWithZeroAndWithZeroConstantBorder< K, bordersize >, NEElementwiseMin, CLPReluLayer, NESlice, NEConvolutionSquare< matrix_size >, CLCropResize, CLBatchNormalizationLayer, CLHOGMultiDetection, NEGEMMAssemblyDispatch, CLFuseBatchNormalization, GCConvolutionLayer, NEDeconvolutionLayer, CLLogicalAnd, CLLogicalOr, CLGEMMLowpMatrixMultiplyCore, NEGEMMLowpMatrixMultiplyCore, CLGaussianPyramidHalf, NEFFTConvolutionLayer, CLDepthwiseConvolutionLayer, CLStridedSlice, NEGaussianPyramidHalf, NEGenerateProposalsLayer, CLBatchToSpaceLayer, CLHarrisCorners, FusedConvolutionBatchNormalizationFunction< TargetInfo, FusedLayerTypes >, NEDirectConvolutionLayer, NEGEMM, FusedDepthwiseConvolutionBatchNormalizationFunction< TargetInfo, FusedLayerTypes >, CLSoftmaxLayerGeneric< IS_LOG >, NEDepthwiseConvolutionAssemblyDispatch, CLConcatenateLayer, CLDirectConvolutionLayer, NELogicalOr, CLLaplacianReconstruct, NEPReluLayer, NESpaceToBatchLayer, NEHarrisCorners, CLCrop, CLMaxUnpoolingLayer, NEHOGMultiDetection, CLConvolutionLayerReshapeWeights, CLPadLayer, NEGEMMConv2d, CLReductionOperation, GCGEMM, NEBatchNormalizationLayer, CLL2NormalizeLayer, CLMinMaxLocation, CLNormalizationLayer, CLArgMinMaxLayer, CLCannyEdge, CLStackLayer, GCFullyConnectedLayer, NELaplacianReconstruct, CLHOGDetector, NEFuseBatchNormalization, CLActivationLayer, CLFastCorners, NECropResize, CLRNNLayer, CLSobel5x5, CLSobel7x7, NEOpticalFlow, NEPadLayer, CLGaussian5x5, CLScale, NEDepthwiseConvolutionLayer, NEDetectionPostProcessLayer, CLLaplacianPyramid, NEConvolutionLayerReshapeWeights, CLDeconvolutionLayer, CLDeconvolutionLayerUpsample, CLFFT1D, CPPBoxWithNonMaximaSuppressionLimit, NEArithmeticAddition, NECannyEdge, CPPDetectionPostProcessLayer, CLPermute, NEActivationLayer, NELaplacianPyramid, CLFFT2D, NEArgMinMaxLayer, NEInstanceNormalizationLayer, NEWinogradConvolutionLayer, CLHOGDescriptor, CLMeanStdDev, CLPoolingLayer, NENormalizationLayer, NEPoolingLayer, NEFastCorners, NEFFT1D, NEStackLayer, NEConcatenateLayer, NEL2NormalizeLayer, NEMaxUnpoolingLayer, NEReductionOperation, NERNNLayer, CLCopy, CLHOGGradient, CLSpaceToDepthLayer, NESobel5x5, NESobel7x7, CLLogicalNot, CLReduceMean, NEArithmeticSubtraction, CLFill, CLUnstack, NEMinMaxLocation, CLRsqrtLayer, CLFloor, NEGaussian5x5, NEHOGGradient, NERange, NEReduceMean, NEUnstack, CLEqualizeHistogram, CLReshapeLayer, NEFFT2D, NEHOGDescriptor, NEPermute, NESoftmaxLayerGeneric< IS_LOG >, GCDirectConvolutionLayer, NEConvertFullyConnectedWeights, NEDerivative, NEElementwiseMax, NEEqualizeHistogram, NEROIPoolingLayer, NESpaceToDepthLayer, CLFlattenLayer, CLIntegralImage, GCNormalizePlanarYUVLayer, GCPoolingLayer, NECopy, NEFloor, NEElementwiseUnaryLayer< op >, NEReshapeLayer, CLHistogram, CPPDetectionOutputLayer, NEHistogram, NEMeanStdDev, GCDepthwiseConvolutionLayer3x3, GCSoftmaxLayer, NELogicalAnd, GCNormalizationLayer, GCBatchNormalizationLayer, GCConvolutionLayerReshapeWeights, GCConcatenateLayer, NEFill, ICLSimpleFunction, NEFlattenLayer, GCDropoutLayer, INESimpleFunctionNoBorder, IGCSimpleFunction, NEFillBorder, INESimpleFunction, CLSplit, NESplit, and ICPPSimpleFunction.