diff options
author | Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> | 2019-07-22 15:30:22 +0100 |
---|---|---|
committer | mike.kelly <mike.kelly@arm.com> | 2019-07-22 15:38:48 +0000 |
commit | 6f3785d4f612e06854ab63dffbd2cd3d484c2e14 (patch) | |
tree | 71a082042e0c8fd95774ac515812152d1bbade22 /src/backends/neon | |
parent | aab709b3598b07223ba2da1ab8a18f95e30ff70d (diff) | |
download | armnn-6f3785d4f612e06854ab63dffbd2cd3d484c2e14.tar.gz |
IVGCVSW-3548 Use BuildArmComputePadStrideInfo() in CL and NEON convolution workloads
* Refactoring: use existing utility function for creating arm_compute::PadStrideInfo
objects in CL and NEON convolution workloads instead of duplicating code
Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com>
Change-Id: Id5e5a0f264e20af99dabce8dd8c6b782dedb94e6
Diffstat (limited to 'src/backends/neon')
-rw-r--r-- | src/backends/neon/workloads/NeonConvolution2dWorkload.cpp | 8 | ||||
-rw-r--r-- | src/backends/neon/workloads/NeonDepthwiseConvolutionWorkload.cpp | 11 |
2 files changed, 3 insertions, 16 deletions
diff --git a/src/backends/neon/workloads/NeonConvolution2dWorkload.cpp b/src/backends/neon/workloads/NeonConvolution2dWorkload.cpp index 564ba0310f..683decd45c 100644 --- a/src/backends/neon/workloads/NeonConvolution2dWorkload.cpp +++ b/src/backends/neon/workloads/NeonConvolution2dWorkload.cpp @@ -81,13 +81,7 @@ NeonConvolution2dWorkload::NeonConvolution2dWorkload( BuildArmComputeTensor(*m_BiasTensor, m_Data.m_Bias->GetTensorInfo(), m_Data.m_Parameters.m_DataLayout); } - arm_compute::PadStrideInfo padStrideInfo(m_Data.m_Parameters.m_StrideX, - m_Data.m_Parameters.m_StrideY, - m_Data.m_Parameters.m_PadLeft, - m_Data.m_Parameters.m_PadRight, - m_Data.m_Parameters.m_PadTop, - m_Data.m_Parameters.m_PadBottom, - arm_compute::DimensionRoundingType::FLOOR); + arm_compute::PadStrideInfo padStrideInfo = BuildArmComputePadStrideInfo(m_Data.m_Parameters); const arm_compute::Size2D aclDilationInfo = BuildArmComputeSize2D(m_Data.m_Parameters.m_DilationX, m_Data.m_Parameters.m_DilationY); diff --git a/src/backends/neon/workloads/NeonDepthwiseConvolutionWorkload.cpp b/src/backends/neon/workloads/NeonDepthwiseConvolutionWorkload.cpp index 7b8e36827a..bfe4ddaea7 100644 --- a/src/backends/neon/workloads/NeonDepthwiseConvolutionWorkload.cpp +++ b/src/backends/neon/workloads/NeonDepthwiseConvolutionWorkload.cpp @@ -93,15 +93,6 @@ NeonDepthwiseConvolutionWorkload::NeonDepthwiseConvolutionWorkload( BuildArmComputeTensor(*m_BiasTensor, m_Data.m_Bias->GetTensorInfo(), m_Data.m_Parameters.m_DataLayout); } - arm_compute::PadStrideInfo padStrideInfo(m_Data.m_Parameters.m_StrideX, - m_Data.m_Parameters.m_StrideY, - m_Data.m_Parameters.m_PadLeft, - m_Data.m_Parameters.m_PadRight, - m_Data.m_Parameters.m_PadTop, - m_Data.m_Parameters.m_PadBottom, - arm_compute::DimensionRoundingType::FLOOR); - - const arm_compute::Size2D aclDilationInfo = BuildArmComputeSize2D( m_Data.m_Parameters.m_DilationX, m_Data.m_Parameters.m_DilationY); @@ -120,6 +111,8 @@ NeonDepthwiseConvolutionWorkload::NeonDepthwiseConvolutionWorkload( // Get the depth multiplier const unsigned int depthMultiplier = weightInfo.GetShape()[0]; + arm_compute::PadStrideInfo padStrideInfo = BuildArmComputePadStrideInfo(m_Data.m_Parameters); + // Check for optimisation opportunities. bool use3x3Optimisation = (weightInfo.GetShape()[2] == 3) && (weightInfo.GetShape()[3] == 3); if (use3x3Optimisation) |