From 900289936c458eff95499e0a0eaba989a27aaa4d Mon Sep 17 00:00:00 2001 From: Manuel Bottini Date: Wed, 30 Jun 2021 18:29:18 +0100 Subject: Port NEIm2ColKernel Resolves: COMPMID-4510 Change-Id: Ia3e588f599449d975dabad4afafb2974dd44d0ad Signed-off-by: Manuel Bottini Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/5899 Tested-by: Arm Jenkins Reviewed-by: Michele Di Giorgio Comments-Addressed: Arm Jenkins --- arm_compute/runtime/NEON/functions/NEGEMMConvolutionLayer.h | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) (limited to 'arm_compute/runtime/NEON/functions/NEGEMMConvolutionLayer.h') diff --git a/arm_compute/runtime/NEON/functions/NEGEMMConvolutionLayer.h b/arm_compute/runtime/NEON/functions/NEGEMMConvolutionLayer.h index d334d518e2..655d733bd1 100644 --- a/arm_compute/runtime/NEON/functions/NEGEMMConvolutionLayer.h +++ b/arm_compute/runtime/NEON/functions/NEGEMMConvolutionLayer.h @@ -41,8 +41,14 @@ namespace arm_compute { class ITensor; class NECol2ImKernel; -class NEIm2ColKernel; class NEWeightsReshapeKernel; +namespace cpu +{ +namespace kernels +{ +class CpuIm2ColKernel; +} // namespace kernels +} // namespace cpu /** Function to reshape the weights. This function calls the following kernel: * -# @ref NEWeightsReshapeKernel @@ -152,7 +158,7 @@ private: /** Basic function to compute the convolution layer. This function calls the following kernels/functions: * - * -# @ref NEIm2ColKernel + * -# @ref cpu::kernels::CpuIm2ColKernel * -# @ref NEGEMM (if the data type is BFLOAT16/FP16/FP32) * -# @ref NEGEMMLowpMatrixMultiplyCore (if the data type is QASYMM8/QASYMM8_SIGNED) * -# @ref NEGEMMLowpOutputStage (if the data type is QASYMM8/QASYMM8_SIGNED) @@ -283,12 +289,13 @@ private: IWeightsManager *_weights_manager; NEConvolutionLayerReshapeWeights _reshape_weights; weights_transformations::NEConvolutionLayerReshapeWeightsTransform _reshape_weights_managed; - std::unique_ptr _im2col_kernel; + std::unique_ptr _im2col_kernel; NEGEMM _mm_gemm; NEGEMMLowpMatrixMultiplyCore _mm_gemmlowp; std::unique_ptr _col2im_kernel; NEReshapeLayer _reshape_layer; + const ITensor *_input; const ITensor *_original_weights; const ITensor *_original_output; -- cgit v1.2.1