diff options
author | Keith Davis <keith.davis@arm.com> | 2020-08-31 08:32:55 +0100 |
---|---|---|
committer | KeithARM <keith.davis@arm.com> | 2020-08-31 13:37:55 +0000 |
commit | f500d6c22c7799dcc6b057d560fb88947ac63e6a (patch) | |
tree | b81fcc7e1c35120916119a114a040cce3108ab45 /src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp | |
parent | 7faf9a88637afae76373a439d7eca3507b77c98c (diff) | |
download | armnn-f500d6c22c7799dcc6b057d560fb88947ac63e6a.tar.gz |
IVGCVSW-5249 Use CreateTensorHandle from ITensorHandleFactory in the test for all layers between C-D
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I9583adf50e67e63e73833f400d1c50fbff57f60c
Diffstat (limited to 'src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp')
-rw-r--r-- | src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp | 266 |
1 files changed, 189 insertions, 77 deletions
diff --git a/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp index 407e627a39..e99a26e81e 100644 --- a/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp +++ b/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.cpp @@ -201,6 +201,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, LayerTestResult<T, 4> SimpleConvolution2dTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const boost::multi_array<T, 4>& originalInput, const boost::multi_array<T, 4>& originalKernel, const boost::multi_array<B, 1>& bias, @@ -312,10 +313,10 @@ LayerTestResult<T, 4> SimpleConvolution2dTestImpl( outputData = tmp; } ret.outputExpected = MakeTensor<T, 4>(outputTensorInfo, outputData); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::Convolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -368,6 +369,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, LayerTestResult<O, 4> SimpleConvolution2dNhwcTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const boost::multi_array<T, 4>& input, const boost::multi_array<T, 4>& kernel, const boost::multi_array<B, 1>& bias, @@ -418,10 +420,10 @@ LayerTestResult<O, 4> SimpleConvolution2dNhwcTestImpl( LayerTestResult<O, 4> ret(outputTensorInfo); ret.outputExpected = MakeTensor<O, 4>(outputTensorInfo, outputData); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); AllocateAndCopyDataToITensorHandle(&weightsTensor, &kernel[0][0][0][0]); @@ -461,6 +463,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = arm LayerTestResult<T,4> Convolution1dTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool biasEnabled) @@ -539,10 +542,10 @@ LayerTestResult<T,4> Convolution1dTestImpl( biasData, biasInfo.GetQuantizationScale(), biasInfo.GetQuantizationOffset(), 1, outputSize); } - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputInfo); - std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputInfo); + std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputInfo); + armnn::Convolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelInfo); @@ -583,6 +586,7 @@ template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>> LayerTestResult<T, 4> SimpleConvolution2d3x3NhwcTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool biasEnabled, @@ -623,6 +627,7 @@ LayerTestResult<T, 4> SimpleConvolution2d3x3NhwcTestCommon( return SimpleConvolution2dNhwcTestImpl<ArmnnType, ArmnnType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, boost::multi_array<T, 1>(), @@ -636,6 +641,7 @@ template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>> LayerTestResult<T, 4> SimpleConvolution2d3x3Stride2x2TestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool biasEnabled, @@ -685,6 +691,7 @@ LayerTestResult<T, 4> SimpleConvolution2d3x3Stride2x2TestCommon( return SimpleConvolution2dNhwcTestImpl<ArmnnType, ArmnnType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, boost::multi_array<T, 1>(), @@ -704,6 +711,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = arm LayerTestResult<T, 4> SimpleConvolution2d3x5TestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool biasEnabled, @@ -777,6 +785,7 @@ LayerTestResult<T, 4> SimpleConvolution2d3x5TestCommon( return SimpleConvolution2dTestImpl<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2<ArmnnBType>(biasEnabled, qScale * qScale), @@ -791,6 +800,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, LayerTestResult<T, 4> SimpleConvolution2d3x3TestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool biasEnabled, @@ -856,6 +866,7 @@ LayerTestResult<T, 4> SimpleConvolution2d3x3TestCommon( return SimpleConvolution2dTestImpl<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2<ArmnnBType>(biasEnabled, qScale * qScale), @@ -870,6 +881,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, LayerTestResult<T, 4> Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::DataLayout layout, float qScale, int32_t qOffset) @@ -919,6 +931,7 @@ LayerTestResult<T, 4> Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTest return SimpleConvolution2dTestImpl<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2<ArmnnBType>(false, qScale * qScale), @@ -937,6 +950,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, LayerTestResult<T, 4> SimpleConvolution2dAsymmetricPaddingTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::DataLayout layout, float qScale, int32_t qOffset) @@ -979,6 +993,7 @@ LayerTestResult<T, 4> SimpleConvolution2dAsymmetricPaddingTestCommon( return SimpleConvolution2dTestImpl<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2<ArmnnBType>(false, qScale * qScale), @@ -996,6 +1011,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = arm LayerTestResult<T, 4> Convolution2d3x3DilationTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const std::vector<float>& inputNoQuantizedValues, armnn::TensorInfo& inputTensorInfo, const std::vector<float>& kernelNoQuantizedValues, @@ -1064,6 +1080,7 @@ LayerTestResult<T, 4> Convolution2d3x3DilationTestCommon( return SimpleConvolution2dTestImpl<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2<ArmnnBType>(biasEnabled, qScale * qScale), @@ -1085,6 +1102,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T> LayerTestResult<T, 4> Convolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -1125,6 +1143,7 @@ LayerTestResult<T, 4> Convolution2d3x3Dilation3x3Test( return Convolution2d3x3DilationTestCommon<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -1141,6 +1160,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T> LayerTestResult<T, 4> Convolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -1196,6 +1216,7 @@ LayerTestResult<T, 4> Convolution2d2x3x3Dilation3x3Test( return Convolution2d3x3DilationTestCommon<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -1212,6 +1233,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T> LayerTestResult<T, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -1256,6 +1278,7 @@ LayerTestResult<T, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test( return Convolution2d3x3DilationTestCommon<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -1279,7 +1302,9 @@ template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>> LayerTestResult<T,4> CompareConvolution2dTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - armnn::IWorkloadFactory& refWorkloadFactory) + armnn::IWorkloadFactory& refWorkloadFactory, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::ITensorHandleFactory& refTensorHandleFactory) { unsigned int inputHeight = 8; unsigned int inputWidth = 16; @@ -1319,10 +1344,10 @@ LayerTestResult<T,4> CompareConvolution2dTestImpl( auto input = MakeRandomTensor<T, 4>(inputTensorInfo, 124908); auto kernel = MakeRandomTensor<T, 4>(kernelDesc, 891234); auto bias = MakeRandomTensor<T, 1>(biasDesc, 1028); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::Convolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -1342,10 +1367,10 @@ LayerTestResult<T,4> CompareConvolution2dTestImpl( data.m_Parameters.m_PadTop = padY; data.m_Parameters.m_PadBottom = padY; data.m_Parameters.m_BiasEnabled = true; - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> outputHandleRef = refWorkloadFactory.CreateTensorHandle(outputTensorInfo); - std::unique_ptr<armnn::ITensorHandle> inputHandleRef = refWorkloadFactory.CreateTensorHandle(inputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> outputHandleRef = refTensorHandleFactory.CreateTensorHandle(outputTensorInfo); + std::unique_ptr<armnn::ITensorHandle> inputHandleRef = refTensorHandleFactory.CreateTensorHandle(inputTensorInfo); + armnn::Convolution2dQueueDescriptor refData = data; armnn::WorkloadInfo refInfo = info; SetWorkloadInput(refData, refInfo, 0, inputTensorInfo, inputHandleRef.get()); @@ -1377,6 +1402,7 @@ LayerTestResult<T,4> CompareConvolution2dTestImpl( LayerTestResult<float, 4> Convolution2d3x3Stride2x2BFloat16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout& dataLayout) { @@ -1467,6 +1493,7 @@ LayerTestResult<float, 4> Convolution2d3x3Stride2x2BFloat16Test( <armnn::DataType::BFloat16, armnn::DataType::Float32, armnn::BFloat16, float, armnn::DataType::Float32, float>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, boost::multi_array<float, 1>(), @@ -1485,6 +1512,7 @@ LayerTestResult<float, 4> Convolution2d3x3Stride2x2BFloat16Test( LayerTestResult<float, 4> Convolution2d3x3Stride2x2BFloat16SmallValueTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout& dataLayout) { @@ -1575,6 +1603,7 @@ LayerTestResult<float, 4> Convolution2d3x3Stride2x2BFloat16SmallValueTest( <armnn::DataType::BFloat16, armnn::DataType::Float32, armnn::BFloat16, float, armnn::DataType::Float32, float>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, boost::multi_array<float, 1>(), @@ -1599,6 +1628,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, LayerTestResult<T, 4> DepthwiseConvolution2dAsymmetricTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const boost::multi_array<T, 4>& input, const boost::multi_array<T, 4>& kernel, const boost::multi_array<B, 1>& bias, @@ -1689,10 +1719,10 @@ LayerTestResult<T, 4> DepthwiseConvolution2dAsymmetricTestImpl( } ret.outputExpected = MakeTensor<T, 4>(outputTensorInfo, outputData); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); AllocateAndCopyDataToITensorHandle(&weightsTensor, &kernel[0][0][0][0]); @@ -1736,6 +1766,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = arm LayerTestResult<T, 4> DepthwiseConvolution2dDepthMul1TestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool biasEnabled, @@ -1846,10 +1877,10 @@ LayerTestResult<T, 4> DepthwiseConvolution2dDepthMul1TestImpl( } ret.outputExpected = MakeTensor<T, 4>(outputTensorInfo, outputImage); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::DepthwiseConvolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -1889,6 +1920,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = arm LayerTestResult<T, 4> DepthwiseConvolution2dTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool biasEnabled, @@ -2058,10 +2090,10 @@ LayerTestResult<T, 4> DepthwiseConvolution2dTestImpl( } ret.outputExpected = MakeTensor<T, 4>(outputTensorInfo, outputImage); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::DepthwiseConvolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -2102,6 +2134,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, LayerTestResult<T, 4> DepthwiseConvolution2dTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const boost::multi_array<T, 4>& originalInput, const boost::multi_array<T, 4>& originalKernel, const boost::multi_array<B, 1>& bias, @@ -2214,10 +2247,10 @@ LayerTestResult<T, 4> DepthwiseConvolution2dTestImpl( outputData = tmp; } ret.outputExpected = MakeTensor<T, 4>(outputTensorInfo, outputData); -ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); -ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::DepthwiseConvolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -2265,6 +2298,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, LayerTestResult<T, 4> DepthwiseConvolution2dAsymmetricTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool biasEnabled, @@ -2329,6 +2363,7 @@ LayerTestResult<T, 4> DepthwiseConvolution2dAsymmetricTestCommon( return DepthwiseConvolution2dAsymmetricTestImpl<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2<ArmnnBType>(biasEnabled, qScale * qScale), @@ -2349,6 +2384,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, LayerTestResult<T, 4> DepthwiseConvolution2dNhwcTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool biasEnabled) @@ -2410,6 +2446,7 @@ LayerTestResult<T, 4> DepthwiseConvolution2dNhwcTestCommon( return DepthwiseConvolution2dTestImpl<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2<ArmnnBType>(biasEnabled, qScale * qScale), @@ -2430,6 +2467,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, LayerTestResult<T, 4> SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool biasEnabled) @@ -2485,6 +2523,7 @@ LayerTestResult<T, 4> SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTestCommon( return DepthwiseConvolution2dTestImpl<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2<ArmnnBType>(biasEnabled, qScale * qScale), @@ -2506,6 +2545,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T = arm LayerTestResult<T, 4> DepthwiseConvolution2d3x3DilationTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const std::vector<float>& inputNoQuantizedValues, armnn::TensorInfo& inputTensorInfo, const std::vector<float>& kernelNoQuantizedValues, @@ -2574,6 +2614,7 @@ LayerTestResult<T, 4> DepthwiseConvolution2d3x3DilationTestCommon( return DepthwiseConvolution2dTestImpl<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias<ArmnnBType>(biasEnabled, qScale * qScale, outputTensorInfo, layout), @@ -2595,6 +2636,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T> LayerTestResult<T, 4> DepthwiseConvolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -2635,6 +2677,7 @@ LayerTestResult<T, 4> DepthwiseConvolution2d3x3Dilation3x3Test( return DepthwiseConvolution2d3x3DilationTestCommon<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -2651,6 +2694,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T> LayerTestResult<T, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -2711,6 +2755,7 @@ LayerTestResult<T, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test( return DepthwiseConvolution2d3x3DilationTestCommon<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -2727,6 +2772,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T> LayerTestResult<T, 4> DepthwiseConvolution2dMult4Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -2803,6 +2849,7 @@ LayerTestResult<T, 4> DepthwiseConvolution2dMult4Test( return DepthwiseConvolution2d3x3DilationTestCommon<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -2819,6 +2866,7 @@ template<armnn::DataType ArmnnType, armnn::DataType ArmnnBType, typename T> LayerTestResult<T, 4> DepthwiseConvolution2dMult2Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -2872,6 +2920,7 @@ LayerTestResult<T, 4> DepthwiseConvolution2dMult2Test( return DepthwiseConvolution2d3x3DilationTestCommon<ArmnnType, ArmnnBType>( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -2889,6 +2938,8 @@ LayerTestResult<T, 4> CompareDepthwiseConvolution2dTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, armnn::IWorkloadFactory& refWorkloadFactory, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::ITensorHandleFactory& refTensorHandleFactory, const armnnUtils::DataLayoutIndexed& layout) { unsigned int inputHeight = 8; @@ -2951,10 +3002,10 @@ LayerTestResult<T, 4> CompareDepthwiseConvolution2dTestImpl( auto kernel = MakeRandomTensor<T, 4>(kernelDesc, 891234, 0.0f, 255.0f); auto bias = MakeRandomTensor<typename FullyConnectedBiasTypeForInputType<T>::Type, 1>( biasDesc, 1028, 0.0f, 255.0f); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr<armnn::ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr<armnn::ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::DepthwiseConvolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -2975,10 +3026,10 @@ LayerTestResult<T, 4> CompareDepthwiseConvolution2dTestImpl( data.m_Parameters.m_PadBottom = padY; data.m_Parameters.m_BiasEnabled = true; data.m_Parameters.m_DataLayout = layout.GetDataLayout(); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<armnn::ITensorHandle> outputHandleRef = refWorkloadFactory.CreateTensorHandle(outputTensorInfo); - std::unique_ptr<armnn::ITensorHandle> inputHandleRef = refWorkloadFactory.CreateTensorHandle(inputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<armnn::ITensorHandle> outputHandleRef = refTensorHandleFactory.CreateTensorHandle(outputTensorInfo); + std::unique_ptr<armnn::ITensorHandle> inputHandleRef = refTensorHandleFactory.CreateTensorHandle(inputTensorInfo); + armnn::DepthwiseConvolution2dQueueDescriptor refData = data; armnn::WorkloadInfo refInfo = info; SetWorkloadInput(refData, refInfo, 0, inputTensorInfo, inputHandleRef.get()); @@ -3014,6 +3065,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::BFloat16>, 4> Convolution2d3x3Dilation3x3Test<armnn::DataType::BFloat16, armnn::DataType::BFloat16>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3021,6 +3073,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4> Convolution2d3x3Dilation3x3Test<armnn::DataType::Float32, armnn::DataType::Float32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3028,6 +3081,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4> Convolution2d3x3Dilation3x3Test<armnn::DataType::QAsymmS8, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3035,6 +3089,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4> Convolution2d3x3Dilation3x3Test<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3042,6 +3097,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4> Convolution2d3x3Dilation3x3Test<armnn::DataType::QSymmS16, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3049,6 +3105,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4> Convolution2d2x3x3Dilation3x3Test<armnn::DataType::Float32, armnn::DataType::Float32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3056,6 +3113,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::BFloat16>, 4> Convolution2d2x3x3Dilation3x3Test<armnn::DataType::BFloat16, armnn::DataType::BFloat16>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3063,6 +3121,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4> Convolution2d2x3x3Dilation3x3Test<armnn::DataType::QAsymmS8, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3070,6 +3129,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4> Convolution2d2x3x3Dilation3x3Test<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3077,6 +3137,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4> Convolution2d2x3x3Dilation3x3Test<armnn::DataType::QSymmS16, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3084,6 +3145,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::BFloat16>, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test<armnn::DataType::BFloat16, armnn::DataType::BFloat16>( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3091,6 +3153,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test<armnn::DataType::Float32, armnn::DataType::Float32>( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3098,6 +3161,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test<armnn::DataType::QAsymmS8, armnn::DataType::Signed32>( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3105,6 +3169,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3112,6 +3177,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test<armnn::DataType::QSymmS16, armnn::DataType::Signed32>( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3119,6 +3185,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::BFloat16>, 4> DepthwiseConvolution2d3x3Dilation3x3Test<armnn::DataType::BFloat16, armnn::DataType::BFloat16>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3126,6 +3193,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4> DepthwiseConvolution2d3x3Dilation3x3Test<armnn::DataType::Float32, armnn::DataType::Float32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3133,6 +3201,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4> DepthwiseConvolution2d3x3Dilation3x3Test<armnn::DataType::QAsymmS8, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3140,6 +3209,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4> DepthwiseConvolution2d3x3Dilation3x3Test<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3147,6 +3217,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4> DepthwiseConvolution2d3x3Dilation3x3Test<armnn::DataType::QSymmS16, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3154,6 +3225,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::BFloat16>, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test<armnn::DataType::BFloat16, armnn::DataType::BFloat16>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3161,6 +3233,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test<armnn::DataType::Float32, armnn::DataType::Float32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3168,6 +3241,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmS8>, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test<armnn::DataType::QAsymmS8, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3175,6 +3249,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QAsymmU8>, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3182,6 +3257,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::QSymmS16>, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test<armnn::DataType::QSymmS16, armnn::DataType::Signed32>( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3189,6 +3265,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::BFloat16>, 4> DepthwiseConvolution2dMult4Test<armnn::DataType::BFloat16, armnn::DataType::BFloat16>( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3196,6 +3273,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4> DepthwiseConvolution2dMult4Test<armnn::DataType::Float32, armnn::DataType::Float32>( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3203,6 +3281,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::BFloat16>, 4> DepthwiseConvolution2dMult2Test<armnn::DataType::BFloat16, armnn::DataType::BFloat16>( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3210,6 +3289,7 @@ template LayerTestResult<armnn::ResolveType<armnn::DataType::Float32>, 4> DepthwiseConvolution2dMult2Test<armnn::DataType::Float32, armnn::DataType::Float32>( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3220,41 +3300,46 @@ DepthwiseConvolution2dMult2Test<armnn::DataType::Float32, armnn::DataType::Float LayerTestResult<float, 4> SimpleConvolution2d3x5Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x5TestCommon<armnn::DataType::Float32, armnn::DataType::Float32>( - workloadFactory, memoryManager, 0.f, 0, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.f, 0, biasEnabled, layout); } LayerTestResult<uint8_t, 4> SimpleConvolution2d3x5Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x5TestCommon<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult<float, 4> SimpleConvolution2d3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x3TestCommon<armnn::DataType::Float32, armnn::DataType::Float32>( - workloadFactory, memoryManager, 0.f, 0, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.f, 0, biasEnabled, layout); } LayerTestResult<float, 4> SimpleConvolution2d3x3NhwcTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled) { return SimpleConvolution2d3x3NhwcTestCommon<armnn::DataType::Float32>( workloadFactory, memoryManager, + tensorHandleFactory, 0.f, 0, biasEnabled, @@ -3264,12 +3349,14 @@ LayerTestResult<float, 4> SimpleConvolution2d3x3NhwcTest( LayerTestResult<float, 4> SimpleConvolution2d3x3Stride2x2Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x3Stride2x2TestCommon<armnn::DataType::Float32>( workloadFactory, memoryManager, + tensorHandleFactory, 0.f, 0, biasEnabled, @@ -3279,73 +3366,81 @@ LayerTestResult<float, 4> SimpleConvolution2d3x3Stride2x2Test( LayerTestResult<uint8_t, 4> SimpleConvolution2d3x3Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x3TestCommon<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult<int16_t, 4> SimpleConvolution2d3x5QSymm16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x5TestCommon<armnn::DataType::QSymmS16, armnn::DataType::Signed32>( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult<int16_t, 4> SimpleConvolution2d3x3QSymm16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x3TestCommon<armnn::DataType::QSymmS16, armnn::DataType::Signed32>( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult<float, 4> Convolution2dAsymmetricPaddingTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, armnn::DataLayout layout) { return SimpleConvolution2dAsymmetricPaddingTestCommon<armnn::DataType::Float32, armnn::DataType::Float32>( - workloadFactory, memoryManager, layout, 0.0f, 0); + workloadFactory, memoryManager, tensorHandleFactory, layout, 0.0f, 0); } LayerTestResult<float, 4> Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, armnn::DataLayout layout) { return Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTestCommon <armnn::DataType::Float32, armnn::DataType::Float32>( - workloadFactory, memoryManager, layout, 0.0f, 0); + workloadFactory, memoryManager, tensorHandleFactory, layout, 0.0f, 0); } LayerTestResult<float, 4> Convolution1dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled) { return Convolution1dTestImpl<armnn::DataType::Float32, armnn::DataType::Float32>( - workloadFactory, memoryManager, 0.0f, 0, biasEnabled); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, biasEnabled); } LayerTestResult<uint8_t, 4> Convolution1dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled) { return Convolution1dTestImpl<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>( - workloadFactory, memoryManager, 0.1f, 128, biasEnabled); + workloadFactory, memoryManager, tensorHandleFactory, 0.1f, 128, biasEnabled); } LayerTestResult<uint8_t, 4> Convolution2dPerAxisQuantTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::DataLayout layout) { using namespace armnn; @@ -3402,10 +3497,10 @@ LayerTestResult<uint8_t, 4> Convolution2dPerAxisQuantTest( descriptor.m_BiasEnabled = true; descriptor.m_DataLayout = layout; - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputInfo); - std::unique_ptr<ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr<ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputInfo); + std::unique_ptr<ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputInfo); + WorkloadInfo workloadInfo; ScopedCpuTensorHandle weightTensor(kernelInfo); @@ -3440,44 +3535,50 @@ LayerTestResult<uint8_t, 4> Convolution2dPerAxisQuantTest( LayerTestResult<float,4> CompareConvolution2dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - armnn::IWorkloadFactory& refWorkloadFactory) + armnn::IWorkloadFactory& refWorkloadFactory, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::ITensorHandleFactory& refTensorHandleFactory) { return CompareConvolution2dTestImpl<armnn::DataType::Float32>( - workloadFactory, memoryManager, refWorkloadFactory); + workloadFactory, memoryManager, refWorkloadFactory, tensorHandleFactory, refTensorHandleFactory); } LayerTestResult<float, 4> DepthwiseConvolution2dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dTestImpl<armnn::DataType::Float32, armnn::DataType::Float32>( - workloadFactory, memoryManager, 0.0f, 0, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, biasEnabled, layout); } LayerTestResult<float, 4> DepthwiseConvolution2dDepthNhwcTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled) { return DepthwiseConvolution2dNhwcTestCommon<armnn::DataType::Float32, armnn::DataType::Float32>( - workloadFactory, memoryManager, 0.0f, 0, biasEnabled); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, biasEnabled); } LayerTestResult<float, 4> DepthwiseConvolution2dDepthMul1Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dDepthMul1TestImpl<armnn::DataType::Float32, armnn::DataType::Float32>( - workloadFactory, memoryManager, 0.0f, 0, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, biasEnabled, layout); } LayerTestResult<float, 4> DepthwiseConvolution2dDepthMul64Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { armnn::TensorInfo inputTensorInfo({ 1, 1, 2, 2 }, armnn::DataType::Float32); auto input = MakeTensor<float, 4>(inputTensorInfo, { 1.f, 2.f, 3.f, 4.f }); @@ -3498,6 +3599,7 @@ LayerTestResult<float, 4> DepthwiseConvolution2dDepthMul64Test( return DepthwiseConvolution2dTestImpl<armnn::DataType::Float32, armnn::DataType::Float32>( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, boost::multi_array<float, 1>(), @@ -3510,40 +3612,45 @@ LayerTestResult<float, 4> DepthwiseConvolution2dDepthMul64Test( LayerTestResult<float, 4> DepthwiseConvolution2dAsymmetricTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dAsymmetricTestCommon<armnn::DataType::Float32, armnn::DataType::Float32>( - workloadFactory, memoryManager, 0.0f, 0, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, biasEnabled, layout); } LayerTestResult<uint8_t, 4> DepthwiseConvolution2dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dTestImpl<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult<uint8_t, 4> DepthwiseConvolution2dDepthMul1Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dDepthMul1TestImpl<armnn::DataType::QAsymmU8, armnn::DataType::Signed32>( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult<float, 4> SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTestCommon<armnn::DataType::Float32, armnn::DataType::Float32>( workloadFactory, memoryManager, + tensorHandleFactory, 0.f, 0, false); @@ -3552,26 +3659,29 @@ LayerTestResult<float, 4> SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTest( LayerTestResult<int16_t, 4> DepthwiseConvolution2dInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dTestImpl<armnn::DataType::QSymmS16, armnn::DataType::Signed32>( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult<int16_t, 4> DepthwiseConvolution2dDepthMul1Int16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dDepthMul1TestImpl<armnn::DataType::QSymmS16, armnn::DataType::Signed32>( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult<uint8_t, 4> DepthwiseConvolution2dPerAxisQuantTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::DataLayout layout) { using namespace armnn; @@ -3643,10 +3753,8 @@ LayerTestResult<uint8_t, 4> DepthwiseConvolution2dPerAxisQuantTest( descriptor.m_BiasEnabled = true; descriptor.m_DataLayout = layout; - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr<ITensorHandle> inputHandle = workloadFactory.CreateTensorHandle(inputInfo); - std::unique_ptr<ITensorHandle> outputHandle = workloadFactory.CreateTensorHandle(outputInfo); - ARMNN_NO_DEPRECATE_WARN_END + std::unique_ptr<ITensorHandle> inputHandle = tensorHandleFactory.CreateTensorHandle(inputInfo); + std::unique_ptr<ITensorHandle> outputHandle = tensorHandleFactory.CreateTensorHandle(outputInfo); WorkloadInfo workloadInfo; ScopedCpuTensorHandle weightTensor(kernelInfo); @@ -3683,18 +3791,22 @@ LayerTestResult<float, 4> CompareDepthwiseConvolution2dFloatTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, armnn::IWorkloadFactory& refWorkloadFactory, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::ITensorHandleFactory& refTensorHandleFactory, const armnn::DataLayout layout) { return CompareDepthwiseConvolution2dTestImpl<armnn::DataType::Float32>( - workloadFactory, memoryManager, refWorkloadFactory, layout); + workloadFactory, memoryManager, refWorkloadFactory, tensorHandleFactory, refTensorHandleFactory, layout); } LayerTestResult<uint8_t, 4> CompareDepthwiseConvolution2dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, armnn::IWorkloadFactory& refWorkloadFactory, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::ITensorHandleFactory& refTensorHandleFactory, const armnn::DataLayout layout) { return CompareDepthwiseConvolution2dTestImpl<armnn::DataType::QAsymmU8>( - workloadFactory, memoryManager, refWorkloadFactory, layout); + workloadFactory, memoryManager, refWorkloadFactory, tensorHandleFactory, refTensorHandleFactory, layout); } |