From f500d6c22c7799dcc6b057d560fb88947ac63e6a Mon Sep 17 00:00:00 2001 From: Keith Davis Date: Mon, 31 Aug 2020 08:32:55 +0100 Subject: IVGCVSW-5249 Use CreateTensorHandle from ITensorHandleFactory in the test for all layers between C-D Signed-off-by: Keith Davis Change-Id: I9583adf50e67e63e73833f400d1c50fbff57f60c --- .../test/layerTests/ComparisonTestImpl.cpp | 233 +++++++++---- .../test/layerTests/ComparisonTestImpl.hpp | 162 ++++++--- .../test/layerTests/ConcatTestImpl.cpp | 383 +++++++++++++-------- .../test/layerTests/ConcatTestImpl.hpp | 119 +++++-- .../test/layerTests/ConstantTestImpl.cpp | 32 +- .../test/layerTests/ConstantTestImpl.hpp | 15 +- .../test/layerTests/Conv2dTestImpl.cpp | 266 +++++++++----- .../test/layerTests/Conv2dTestImpl.hpp | 47 ++- .../test/layerTests/ConvertBf16ToFp32TestImpl.cpp | 9 +- .../test/layerTests/ConvertBf16ToFp32TestImpl.hpp | 3 +- .../test/layerTests/ConvertFp16ToFp32TestImpl.cpp | 11 +- .../test/layerTests/ConvertFp16ToFp32TestImpl.hpp | 3 +- .../test/layerTests/ConvertFp32ToBf16TestImpl.cpp | 11 +- .../test/layerTests/ConvertFp32ToBf16TestImpl.hpp | 3 +- .../test/layerTests/ConvertFp32ToFp16TestImpl.cpp | 11 +- .../test/layerTests/ConvertFp32ToFp16TestImpl.hpp | 3 +- 16 files changed, 890 insertions(+), 421 deletions(-) (limited to 'src/backends/backendsCommon') diff --git a/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp index 9c83b9d06c..be44234b76 100644 --- a/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp +++ b/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.cpp @@ -26,7 +26,8 @@ template > LayerTestResult ComparisonTestImpl( armnn::IWorkloadFactory & workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr & memoryManager, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::ComparisonDescriptor& descriptor, const armnn::TensorShape& shape0, std::vector values0, @@ -56,11 +57,9 @@ LayerTestResult ComparisonTestImpl( LayerTestResult ret(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle0 = workloadFactory.CreateTensorHandle(inputTensorInfo0); - std::unique_ptr inputHandle1 = workloadFactory.CreateTensorHandle(inputTensorInfo1); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + std::unique_ptr inputHandle0 = tensorHandleFactory.CreateTensorHandle(inputTensorInfo0); + std::unique_ptr inputHandle1 = tensorHandleFactory.CreateTensorHandle(inputTensorInfo1); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); armnn::ComparisonQueueDescriptor qDescriptor; qDescriptor.m_Parameters = descriptor; @@ -95,7 +94,8 @@ template > LayerTestResult ComparisonTestImpl( armnn::IWorkloadFactory & workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr & memoryManager, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::ComparisonDescriptor& descriptor, const armnn::TensorShape& shape0, std::vector values0, @@ -109,6 +109,7 @@ LayerTestResult ComparisonTestImpl( return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, descriptor, shape0, values0, @@ -148,6 +149,7 @@ std::vector GetExpectedOutputData(const TestData& testData, armnn::Comp template LayerTestResult ComparisonTestImpl(armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const TestData& testData, armnn::ComparisonOperation operation, float quantScale = 1.f, @@ -161,6 +163,7 @@ LayerTestResult ComparisonTestImpl(armnn::IWorkloadFactory& workload return ComparisonTestImpl<4, ArmnnInType>( workloadFactory, memoryManager, + tensorHandleFactory, armnn::ComparisonDescriptor(operation), testData.m_InputShape0, inputData0, @@ -339,198 +342,234 @@ static Broadcast1dVectorTestData s_Broadcast1dVectorTestData; // Equal LayerTestResult EqualSimpleTest(armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::Equal); } LayerTestResult EqualBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::Equal); } LayerTestResult EqualBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::Equal); } LayerTestResult EqualSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::Equal); } LayerTestResult EqualBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::Equal); } LayerTestResult EqualBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::Equal); } LayerTestResult EqualSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::Equal); } LayerTestResult EqualBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::Equal); } LayerTestResult EqualBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::Equal); } // Greater LayerTestResult GreaterSimpleTest(armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::Greater); } LayerTestResult GreaterBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::Greater); } LayerTestResult GreaterBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::Greater); } LayerTestResult GreaterSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::Greater); } LayerTestResult GreaterBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::Greater); } LayerTestResult GreaterBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::Greater); } LayerTestResult GreaterSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::Greater); } LayerTestResult GreaterBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::Greater); } LayerTestResult GreaterBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::Greater); } @@ -538,198 +577,234 @@ LayerTestResult GreaterBroadcast1dVectorUint8Test( // GreaterOrEqual LayerTestResult GreaterOrEqualSimpleTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::GreaterOrEqual); } LayerTestResult GreaterOrEqualBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::GreaterOrEqual); } LayerTestResult GreaterOrEqualBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::GreaterOrEqual); } LayerTestResult GreaterOrEqualSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::GreaterOrEqual); } LayerTestResult GreaterOrEqualBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::GreaterOrEqual); } LayerTestResult GreaterOrEqualBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::GreaterOrEqual); } LayerTestResult GreaterOrEqualSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::GreaterOrEqual); } LayerTestResult GreaterOrEqualBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::GreaterOrEqual); } LayerTestResult GreaterOrEqualBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::GreaterOrEqual); } // Less LayerTestResult LessSimpleTest(armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::Less); } LayerTestResult LessBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::Less); } LayerTestResult LessBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::Less); } LayerTestResult LessSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::Less); } LayerTestResult LessBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::Less); } LayerTestResult LessBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::Less); } LayerTestResult LessSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::Less); } LayerTestResult LessBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::Less); } LayerTestResult LessBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::Less); } @@ -737,99 +812,117 @@ LayerTestResult LessBroadcast1dVectorUint8Test( // LessOrEqual LayerTestResult LessOrEqualSimpleTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::LessOrEqual); } LayerTestResult LessOrEqualBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::LessOrEqual); } LayerTestResult LessOrEqualBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::LessOrEqual); } LayerTestResult LessOrEqualSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::LessOrEqual); } LayerTestResult LessOrEqualBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::LessOrEqual); } LayerTestResult LessOrEqualBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::LessOrEqual); } LayerTestResult LessOrEqualSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::LessOrEqual); } LayerTestResult LessOrEqualBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::LessOrEqual); } LayerTestResult LessOrEqualBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::LessOrEqual); } @@ -837,99 +930,117 @@ LayerTestResult LessOrEqualBroadcast1dVectorUint8Test( // NotEqual LayerTestResult NotEqualSimpleTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::NotEqual); } LayerTestResult NotEqualBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::NotEqual); } LayerTestResult NotEqualBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::NotEqual); } LayerTestResult NotEqualSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::NotEqual); } LayerTestResult NotEqualBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::NotEqual); } LayerTestResult NotEqualBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::NotEqual); } LayerTestResult NotEqualSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_SimpleTestData, armnn::ComparisonOperation::NotEqual); } LayerTestResult NotEqualBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1ElementTestData, armnn::ComparisonOperation::NotEqual); } LayerTestResult NotEqualBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return ComparisonTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, s_Broadcast1dVectorTestData, armnn::ComparisonOperation::NotEqual); } diff --git a/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.hpp index d53c62305a..301241785b 100644 --- a/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.hpp +++ b/src/backends/backendsCommon/test/layerTests/ComparisonTestImpl.hpp @@ -13,221 +13,275 @@ // Equal LayerTestResult EqualSimpleTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult EqualBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult EqualBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult EqualSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult EqualBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult EqualBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult EqualSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult EqualBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult EqualBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); // Greater LayerTestResult GreaterSimpleTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); // GreaterOrEqual LayerTestResult GreaterOrEqualSimpleTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterOrEqualBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterOrEqualBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterOrEqualSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterOrEqualBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterOrEqualBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterOrEqualSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterOrEqualBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult GreaterOrEqualBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); // Less LayerTestResult LessSimpleTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); // LessOrEqual LayerTestResult LessOrEqualSimpleTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessOrEqualBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessOrEqualBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessOrEqualSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessOrEqualBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessOrEqualBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessOrEqualSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessOrEqualBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult LessOrEqualBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); // NotEqual LayerTestResult NotEqualSimpleTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult NotEqualBroadcast1ElementTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult NotEqualBroadcast1dVectorTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult NotEqualSimpleFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult NotEqualBroadcast1ElementFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult NotEqualBroadcast1dVectorFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult NotEqualSimpleUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult NotEqualBroadcast1ElementUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult NotEqualBroadcast1dVectorUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); diff --git a/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp index 7f047cd323..d486bc0c19 100644 --- a/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp +++ b/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.cpp @@ -121,6 +121,7 @@ void Generate3dPermuteVectorForConcat( template void PermuteTensorData( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const PermutationVector& mappings, TensorInfo & inputTensorInfo, const T * inputData, @@ -137,10 +138,8 @@ template void PermuteTensorData( } TensorInfo outputTensorInfo = armnnUtils::Permuted(inputTensorInfo, mappings); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); PermuteQueueDescriptor queueDescriptor; queueDescriptor.m_Parameters = PermuteDescriptor{mappings}; @@ -172,6 +171,7 @@ template void PermuteTensorData( template void PermuteInputsForConcat( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, std::vector & inputTensorInfos, std::vector & inputData, std::vector> & inputDataStorage, @@ -215,6 +215,7 @@ template void PermuteInputsForConcat( PermuteTensorData(workloadFactory, memoryManager, + tensorHandleFactory, permutations.first, newTensorInfo, inputData[nthInput], @@ -240,6 +241,7 @@ template void PermuteInputsForConcat( template void PermuteOutputForConcat( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const TensorInfo & tensorInfo, const PermutationVector & permuteVector, std::unique_ptr && inputDataHandle, @@ -262,6 +264,7 @@ template void PermuteOutputForConcat( PermuteTensorData(workloadFactory, memoryManager, + tensorHandleFactory, permuteVector, resultTensorInfo, &inputData[0], @@ -273,6 +276,7 @@ template void PermuteOutputForConcat( template void Concatenate( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, std::initializer_list inputTensorInfosOrig, std::initializer_list inputsOrig, const TensorInfo& outputTensorInfoOrig, @@ -311,6 +315,7 @@ template void Concatenate( // PermuteInputsForConcat(workloadFactory, memoryManager, + tensorHandleFactory, inputTensorInfos, inputs, tmpInputDataStorage, @@ -323,9 +328,9 @@ template void Concatenate( std::vector> inputHandles; inputHandles.reserve(inputCount); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + ConcatQueueDescriptor queueDescriptor; OriginsDescriptor viewsDescriptor = CreateDescriptorForConcat(inputTensorInfos, concatDim); queueDescriptor.m_Parameters = viewsDescriptor; @@ -338,21 +343,21 @@ template void Concatenate( queueDescriptor.m_ViewOrigins.emplace_back(std::vector(viewsDescriptor.GetViewOrigin(i), viewsDescriptor.GetViewOrigin(i) + viewsDescriptor.GetNumDimensions())); } - ARMNN_NO_DEPRECATE_WARN_BEGIN - outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + const bool subTensorsSupported = workloadFactory.SupportsSubTensors(); for (unsigned int i = 0; i < inputCount; ++i) { const TensorInfo& inputTensorInfo = inputTensorInfos[i]; - ARMNN_NO_DEPRECATE_WARN_BEGIN + std::unique_ptr inputHandle = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo.GetShape(), queueDescriptor.m_ViewOrigins[i].m_Origin.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + inputHandles.emplace_back(std::move(inputHandle)); } @@ -362,9 +367,7 @@ template void Concatenate( { for (unsigned int i = 0; i < inputCount; ++i) { - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfos[i]); - ARMNN_NO_DEPRECATE_WARN_END + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfos[i]); inputHandles.emplace_back(std::move(inputHandle)); } } @@ -399,6 +402,7 @@ template void Concatenate( { PermuteOutputForConcat(workloadFactory, memoryManager, + tensorHandleFactory, outputTensorInfo, permuteVector, std::move(outputHandle), @@ -418,6 +422,7 @@ template> LayerTestResult Concat1dTestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { @@ -433,7 +438,7 @@ LayerTestResult Concat1dTestImpl( std::vector output; output.resize(outputTensorInfo.GetNumElements()); - Concatenate(workloadFactory, memoryManager, + Concatenate(workloadFactory, memoryManager, tensorHandleFactory, { inputTensorInfo, inputTensorInfo, inputTensorInfo }, { input0.data(), input1.data(), input2.data() }, outputTensorInfo, @@ -455,6 +460,7 @@ template> LayerTestResult Concat2dTestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const TensorInfo& outputTensorInfo, unsigned int dimension, const float qScale, @@ -496,7 +502,7 @@ LayerTestResult Concat2dTestImpl( std::vector output; output.resize(outputTensorInfo.GetNumElements()); - Concatenate(workloadFactory, memoryManager, + Concatenate(workloadFactory, memoryManager, tensorHandleFactory, { inputTensorInfo, inputTensorInfo, inputTensorInfo }, { input0.data(), input1.data(), input2.data() }, outputTensorInfo, @@ -512,13 +518,14 @@ template> LayerTestResult Concat2dDim0TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { TensorInfo outputTensorInfo({ 6, 3 }, ArmnnType, qScale, qOffset); LayerTestResult result = Concat2dTestImpl( - workloadFactory, memoryManager, outputTensorInfo, 0, qScale, qOffset); + workloadFactory, memoryManager, tensorHandleFactory, outputTensorInfo, 0, qScale, qOffset); result.outputExpected = MakeTensor(outputTensorInfo, QuantizedVector( { @@ -549,13 +556,14 @@ template> LayerTestResult Concat2dDim1TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { TensorInfo outputTensorInfo({ 2, 9 }, ArmnnType, qScale, qOffset); LayerTestResult result = Concat2dTestImpl( - workloadFactory, memoryManager, outputTensorInfo, 1, qScale, qOffset); + workloadFactory, memoryManager, tensorHandleFactory, outputTensorInfo, 1, qScale, qOffset); result.outputExpected = MakeTensor(outputTensorInfo, QuantizedVector( { @@ -574,6 +582,7 @@ template> LayerTestResult Concat2dDim0DiffInputDimsTestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { @@ -615,7 +624,7 @@ LayerTestResult Concat2dDim0DiffInputDimsTestImpl( std::vector output; output.resize(outputTensorInfo.GetNumElements()); - Concatenate(workloadFactory, memoryManager, + Concatenate(workloadFactory, memoryManager, tensorHandleFactory, { input0TensorInfo, input1TensorInfo, input2TensorInfo }, { input0.data(), input1.data(), input2.data() }, outputTensorInfo, @@ -653,6 +662,7 @@ template> LayerTestResult Concat2dDim1DiffInputDimsTestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { @@ -694,7 +704,7 @@ LayerTestResult Concat2dDim1DiffInputDimsTestImpl( std::vector output; output.resize(outputTensorInfo.GetNumElements()); - Concatenate(workloadFactory, memoryManager, + Concatenate(workloadFactory, memoryManager, tensorHandleFactory, { input0TensorInfo, input1TensorInfo, input2TensorInfo }, { input0.data(), input1.data(), input2.data() }, outputTensorInfo, @@ -720,6 +730,7 @@ template> LayerTestResult Concat3dTestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const TensorInfo& outputTensorInfo, unsigned int dimension, bool useSubtensor, @@ -798,7 +809,7 @@ LayerTestResult Concat3dTestImpl( std::vector output; output.resize(outputTensorInfo.GetNumElements()); - Concatenate(workloadFactory, memoryManager, + Concatenate(workloadFactory, memoryManager, tensorHandleFactory, { inputTensorInfo, inputTensorInfo, inputTensorInfo }, { input0.data(), input1.data(), input2.data() }, outputTensorInfo, @@ -814,13 +825,14 @@ template> LayerTestResult Concat3dDim0TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { TensorInfo outputTensorInfo({ 6, 3, 2 }, ArmnnType, qScale, qOffset); LayerTestResult result = Concat3dTestImpl( - workloadFactory, memoryManager, outputTensorInfo, 0, true, qScale, qOffset); + workloadFactory, memoryManager, tensorHandleFactory, outputTensorInfo, 0, true, qScale, qOffset); result.outputExpected = MakeTensor(outputTensorInfo, QuantizedVector( { @@ -887,13 +899,14 @@ template> LayerTestResult Concat3dDim1TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { TensorInfo outputTensorInfo({ 2, 9, 2 }, ArmnnType, qScale, qOffset); LayerTestResult result = Concat3dTestImpl( - workloadFactory, memoryManager, outputTensorInfo, 1, true, qScale, qOffset); + workloadFactory, memoryManager, tensorHandleFactory, outputTensorInfo, 1, true, qScale, qOffset); result.outputExpected = MakeTensor(outputTensorInfo, QuantizedVector( { @@ -960,6 +973,7 @@ template> LayerTestResult Concat3dDim2TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor, float qScale, int32_t qOffset) @@ -967,7 +981,7 @@ LayerTestResult Concat3dDim2TestImpl( TensorInfo outputTensorInfo({ 2, 3, 6 }, ArmnnType, qScale, qOffset); LayerTestResult result = Concat3dTestImpl( - workloadFactory, memoryManager, outputTensorInfo, 2, useSubtensor, qScale, qOffset); + workloadFactory, memoryManager, tensorHandleFactory, outputTensorInfo, 2, useSubtensor, qScale, qOffset); result.outputExpected = MakeTensor(outputTensorInfo, QuantizedVector( { @@ -998,6 +1012,7 @@ template> LayerTestResult Concat3dDim0DiffInputDimsTestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { @@ -1075,7 +1090,7 @@ LayerTestResult Concat3dDim0DiffInputDimsTestImpl( std::vector output; output.resize(outputTensorInfo.GetNumElements()); - Concatenate(workloadFactory, memoryManager, + Concatenate(workloadFactory, memoryManager, tensorHandleFactory, { input0TensorInfo, input1TensorInfo, input2TensorInfo }, { input0.data(), input1.data(), input2.data() }, outputTensorInfo, @@ -1149,6 +1164,7 @@ template> LayerTestResult Concat3dDim1DiffInputDimsTestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { @@ -1220,7 +1236,7 @@ LayerTestResult Concat3dDim1DiffInputDimsTestImpl( std::vector output; output.resize(outputTensorInfo.GetNumElements()); - Concatenate(workloadFactory, memoryManager, + Concatenate(workloadFactory, memoryManager, tensorHandleFactory, { input0TensorInfo, input1TensorInfo, input2TensorInfo }, { input0.data(), input1.data(), input2.data() }, outputTensorInfo, @@ -1288,6 +1304,7 @@ template> LayerTestResult Concat3dDim2DiffInputDimsTestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor, float qScale, int32_t qOffset) @@ -1366,7 +1383,7 @@ LayerTestResult Concat3dDim2DiffInputDimsTestImpl( std::vector output; output.resize(outputTensorInfo.GetNumElements()); - Concatenate(workloadFactory, memoryManager, + Concatenate(workloadFactory, memoryManager, tensorHandleFactory, { input0TensorInfo, input1TensorInfo, input2TensorInfo }, { input0.data(), input1.data(), input2.data() }, outputTensorInfo, @@ -1404,6 +1421,7 @@ template> LayerTestResult Concat4dTestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const TensorInfo& outputTensorInfo, unsigned int dimension, bool useSubtensor, @@ -1452,6 +1470,7 @@ LayerTestResult Concat4dTestImpl( Concatenate(workloadFactory, memoryManager, + tensorHandleFactory, {inputTensorInfo, inputTensorInfo, inputTensorInfo}, {input0.data(), input1.data(), input2.data()}, outputTensorInfo, @@ -1467,13 +1486,14 @@ template> LayerTestResult Concat4dDim0TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { TensorInfo outputTensorInfo({ 3, 3, 2, 2 }, ArmnnType, qScale, qOffset); LayerTestResult result = Concat4dTestImpl( - workloadFactory, memoryManager, outputTensorInfo, 0, true, qScale, qOffset); + workloadFactory, memoryManager, tensorHandleFactory, outputTensorInfo, 0, true, qScale, qOffset); result.outputExpected = MakeTensor(outputTensorInfo, QuantizedVector( { @@ -1507,13 +1527,14 @@ template> LayerTestResult Concat4dDim1TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { TensorInfo outputTensorInfo({ 1, 9, 2, 2 }, ArmnnType, qScale, qOffset); LayerTestResult result = Concat4dTestImpl( - workloadFactory, memoryManager, outputTensorInfo, 1, true, qScale, qOffset); + workloadFactory, memoryManager, tensorHandleFactory, outputTensorInfo, 1, true, qScale, qOffset); result.outputExpected = MakeTensor(outputTensorInfo, QuantizedVector( { @@ -1547,13 +1568,14 @@ template> LayerTestResult Concat4dDim2TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { TensorInfo outputTensorInfo({ 1, 3, 6, 2 }, ArmnnType, qScale, qOffset); LayerTestResult result = Concat4dTestImpl( - workloadFactory, memoryManager, outputTensorInfo, 2, true, qScale, qOffset); + workloadFactory, memoryManager, tensorHandleFactory, outputTensorInfo, 2, true, qScale, qOffset); result.outputExpected = MakeTensor(outputTensorInfo, QuantizedVector( { @@ -1587,6 +1609,7 @@ template> LayerTestResult Concat4dDim3TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool useSubtensor) @@ -1594,7 +1617,7 @@ LayerTestResult Concat4dDim3TestImpl( TensorInfo outputTensorInfo({ 1, 3, 2, 6 }, ArmnnType, qScale, qOffset); LayerTestResult result = Concat4dTestImpl( - workloadFactory, memoryManager, outputTensorInfo, 3, useSubtensor, qScale, qOffset); + workloadFactory, memoryManager, tensorHandleFactory, outputTensorInfo, 3, useSubtensor, qScale, qOffset); result.outputExpected = MakeTensor(outputTensorInfo, QuantizedVector( { @@ -1628,6 +1651,7 @@ template> LayerTestResult Concat4dDiffShapeDim0TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { @@ -1673,6 +1697,7 @@ LayerTestResult Concat4dDiffShapeDim0TestImpl( output.resize(outputTensorInfo.GetNumElements()); Concatenate(workloadFactory, memoryManager, + tensorHandleFactory, {inputTensorInfo0, inputTensorInfo1}, {input0.data(), input1.data()}, outputTensorInfo, @@ -1713,6 +1738,7 @@ template> LayerTestResult Concat4dDiffShapeDim1TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { @@ -1749,6 +1775,7 @@ LayerTestResult Concat4dDiffShapeDim1TestImpl( output.resize(outputTensorInfo.GetNumElements()); Concatenate(workloadFactory, memoryManager, + tensorHandleFactory, {inputTensorInfo0, inputTensorInfo1}, {input0.data(), input1.data()}, outputTensorInfo, @@ -1779,6 +1806,7 @@ template> LayerTestResult Concat4dDiffShapeDim2TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { @@ -1818,6 +1846,7 @@ LayerTestResult Concat4dDiffShapeDim2TestImpl( output.resize(outputTensorInfo.GetNumElements()); Concatenate(workloadFactory, memoryManager, + tensorHandleFactory, {inputTensorInfo0, inputTensorInfo1}, {input0.data(), input1.data()}, outputTensorInfo, @@ -1855,6 +1884,7 @@ template> LayerTestResult Concat4dDiffShapeDim3TestImpl( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset, bool useSubtensor) @@ -1895,6 +1925,7 @@ LayerTestResult Concat4dDiffShapeDim3TestImpl( output.resize(outputTensorInfo.GetNumElements()); Concatenate(workloadFactory, memoryManager, + tensorHandleFactory, {inputTensorInfo0, inputTensorInfo1}, {input0.data(), input1.data()}, outputTensorInfo, @@ -1921,6 +1952,7 @@ template LayerTestResult ConcatDifferentInputOutputQParamTest( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor) { IgnoreUnused(memoryManager); @@ -2009,21 +2041,21 @@ LayerTestResult ConcatDifferentInputOutputQParamTest( std::vector wOrigin2 = { 0, 0, 2 }; //Extent of the window is defined by size of input[1]. ConcatQueueDescriptor::ViewOrigin window2(wOrigin2); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + bool subTensorsSupported = useSubtensor && workloadFactory.SupportsSubTensors(); - ARMNN_NO_DEPRECATE_WARN_BEGIN + std::unique_ptr inputHandle1 = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo1.GetShape(), wOrigin1.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo1); + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo1.GetShape(), wOrigin1.data()) : + tensorHandleFactory.CreateTensorHandle(inputTensorInfo1); std::unique_ptr inputHandle2 = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo2.GetShape(), wOrigin2.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo2); - ARMNN_NO_DEPRECATE_WARN_END + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo2.GetShape(), wOrigin2.data()) : + tensorHandleFactory.CreateTensorHandle(inputTensorInfo2); + ConcatQueueDescriptor data; OriginsDescriptor desc = CreateDescriptorForConcatenation( inputTensorShapes.begin(),inputTensorShapes.end(), 2); @@ -2062,12 +2094,14 @@ template LayerTestResult, 3> ConcatDifferentInputOutputQParamTest( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); template LayerTestResult, 3> ConcatDifferentInputOutputQParamTest( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); // @@ -2076,7 +2110,8 @@ ConcatDifferentInputOutputQParamTest( LayerTestResult ConcatTest( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { IgnoreUnused(memoryManager); @@ -2158,21 +2193,21 @@ LayerTestResult ConcatTest( std::vector wOrigin2 = {2, 0, 0}; //Extent of the window is defined by size of input[1]. ConcatQueueDescriptor::ViewOrigin window2(wOrigin2); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); + + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); bool subTensorsSupported = workloadFactory.SupportsSubTensors(); std::unique_ptr inputHandle1 = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo1.GetShape(), wOrigin1.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo1); + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo1.GetShape(), wOrigin1.data()) : + tensorHandleFactory.CreateTensorHandle(inputTensorInfo1); std::unique_ptr inputHandle2 = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo2.GetShape(), wOrigin2.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo2); - ARMNN_NO_DEPRECATE_WARN_END + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo2.GetShape(), wOrigin2.data()) : + tensorHandleFactory.CreateTensorHandle(inputTensorInfo2); + ConcatQueueDescriptor data; WorkloadInfo info; AddInputToWorkload(data, info, inputTensorInfo1, inputHandle1.get()); @@ -2201,162 +2236,194 @@ LayerTestResult ConcatTest( LayerTestResult Concat1dTest( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat1dTestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat1dTestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat2dDim0Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat2dDim0TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat2dDim0TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat2dDim1Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat2dDim1TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat2dDim1TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat2dDim0DiffInputDimsTest( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat2dDim0DiffInputDimsTestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat2dDim0DiffInputDimsTestImpl(workloadFactory, memoryManager, + tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat2dDim1DiffInputDimsTest( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat2dDim1DiffInputDimsTestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat2dDim1DiffInputDimsTestImpl(workloadFactory, + memoryManager, + tensorHandleFactory, + 0.0f, + 0); } LayerTestResult Concat3dDim0Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat3dDim0TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat3dDim0TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat3dDim1Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat3dDim1TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat3dDim1TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat3dDim2Test( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor) { - return Concat3dDim2TestImpl(workloadFactory, memoryManager, useSubtensor, 0.0f, 0); + return Concat3dDim2TestImpl(workloadFactory, memoryManager, tensorHandleFactory, + useSubtensor, 0.0f, 0); } LayerTestResult Concat3dDim0DiffInputDimsTest( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return Concat3dDim0DiffInputDimsTestImpl( - workloadFactory, memoryManager, 0.0f, 0); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat3dDim1DiffInputDimsTest( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat3dDim1DiffInputDimsTestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat3dDim1DiffInputDimsTestImpl(workloadFactory, memoryManager, + tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat3dDim2DiffInputDimsTest( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor) { return Concat3dDim2DiffInputDimsTestImpl( - workloadFactory, memoryManager, useSubtensor, 0.0f, 0); + workloadFactory, memoryManager, tensorHandleFactory, useSubtensor, 0.0f, 0); } LayerTestResult Concat4dDim0Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat4dDim0TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat4dDim0TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat4dDim1Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat4dDim1TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat4dDim1TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat4dDim2Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat4dDim2TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat4dDim2TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat4dDim3Test( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor) { - return Concat4dDim3TestImpl(workloadFactory, memoryManager, 0.0f, 0, useSubtensor); + return Concat4dDim3TestImpl(workloadFactory, memoryManager, + tensorHandleFactory, 0.0f, 0, useSubtensor); } LayerTestResult Concat4dDiffShapeDim0Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat4dDiffShapeDim0TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat4dDiffShapeDim0TestImpl(workloadFactory, memoryManager, + tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat4dDiffShapeDim1Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return Concat4dDiffShapeDim1TestImpl( - workloadFactory, memoryManager, 0.0f, 0); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat4dDiffShapeDim2Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat4dDiffShapeDim2TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat4dDiffShapeDim2TestImpl(workloadFactory, memoryManager, + tensorHandleFactory, 0.0f, 0); } LayerTestResult Concat4dDiffShapeDim3Test( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor) { return Concat4dDiffShapeDim3TestImpl( - workloadFactory, memoryManager, 0.0f, 0, useSubtensor); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, useSubtensor); } LayerTestResult ConcatFloat16Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat3dDim1TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat3dDim1TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult ConcatBFloat16Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat3dDim1TestImpl(workloadFactory, memoryManager, 0.0f, 0); + return Concat3dDim1TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult ConcatUint8DifferentQParamsTest( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { IgnoreUnused(memoryManager); @@ -2458,21 +2525,21 @@ LayerTestResult ConcatUint8DifferentQParamsTest( std::vector wOrigin2 = { 2, 0, 0 }; //Extent of the window is defined by size of input[1]. ConcatQueueDescriptor::ViewOrigin window2(wOrigin2); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); + + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); bool subTensorsSupported = workloadFactory.SupportsSubTensors(); std::unique_ptr inputHandle1 = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo1.GetShape(), wOrigin1.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo1); + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo1.GetShape(), wOrigin1.data()) : + tensorHandleFactory.CreateTensorHandle(inputTensorInfo1); std::unique_ptr inputHandle2 = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo2.GetShape(), wOrigin2.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo2); - ARMNN_NO_DEPRECATE_WARN_END + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo2.GetShape(), wOrigin2.data()) : + tensorHandleFactory.CreateTensorHandle(inputTensorInfo2); + ConcatQueueDescriptor data; WorkloadInfo info; AddInputToWorkload(data, info, inputTensorInfo1, inputHandle1.get()); @@ -2501,7 +2568,8 @@ LayerTestResult ConcatUint8DifferentQParamsTest( LayerTestResult ConcatUint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { IgnoreUnused(memoryManager); @@ -2595,21 +2663,20 @@ LayerTestResult ConcatUint8Test( std::vector wOrigin2 = { 2, 0, 0 }; //Extent of the window is defined by size of input[1]. ConcatQueueDescriptor::ViewOrigin window2(wOrigin2); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); bool subTensorsSupported = workloadFactory.SupportsSubTensors(); std::unique_ptr inputHandle1 = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo1.GetShape(), wOrigin1.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo1); + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo1.GetShape(), wOrigin1.data()) : + tensorHandleFactory.CreateTensorHandle(inputTensorInfo1); std::unique_ptr inputHandle2 = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo2.GetShape(), wOrigin2.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo2); - ARMNN_NO_DEPRECATE_WARN_END + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo2.GetShape(), wOrigin2.data()) : + tensorHandleFactory.CreateTensorHandle(inputTensorInfo2); + ConcatQueueDescriptor data; WorkloadInfo info; @@ -2639,7 +2706,8 @@ LayerTestResult ConcatUint8Test( LayerTestResult ConcatUint16Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { IgnoreUnused(memoryManager); @@ -2730,21 +2798,21 @@ LayerTestResult ConcatUint16Test( std::vector wOrigin2 = { 2, 0, 0 }; //Extent of the window is defined by size of input[1]. ConcatQueueDescriptor::ViewOrigin window2(wOrigin2); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); + + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); bool subTensorsSupported = workloadFactory.SupportsSubTensors(); std::unique_ptr inputHandle1 = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo1.GetShape(), wOrigin1.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo1); + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo1.GetShape(), wOrigin1.data()) : + tensorHandleFactory.CreateTensorHandle(inputTensorInfo1); std::unique_ptr inputHandle2 = subTensorsSupported ? - workloadFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo2.GetShape(), wOrigin2.data()) : - workloadFactory.CreateTensorHandle(inputTensorInfo2); - ARMNN_NO_DEPRECATE_WARN_END + tensorHandleFactory.CreateSubTensorHandle(*outputHandle, inputTensorInfo2.GetShape(), wOrigin2.data()) : + tensorHandleFactory.CreateTensorHandle(inputTensorInfo2); + ConcatQueueDescriptor data; WorkloadInfo info; @@ -2774,146 +2842,165 @@ LayerTestResult ConcatUint16Test( LayerTestResult Concat1dUint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat1dTestImpl(workloadFactory, memoryManager, 0.5f, -1); + return Concat1dTestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat2dDim0Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat2dDim0TestImpl(workloadFactory, memoryManager, 0.5f, -1); + return Concat2dDim0TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat2dDim1Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat2dDim1TestImpl(workloadFactory, memoryManager, 0.5f, -1); + return Concat2dDim1TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat2dDim0DiffInputDimsUint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return Concat2dDim0DiffInputDimsTestImpl( - workloadFactory, memoryManager, 0.5f, -1); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat2dDim1DiffInputDimsUint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return Concat2dDim1DiffInputDimsTestImpl( - workloadFactory, memoryManager, 0.5f, -1); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat3dDim0Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat3dDim0TestImpl(workloadFactory, memoryManager, 0.5f, -1); + return Concat3dDim0TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat3dDim1Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat3dDim1TestImpl(workloadFactory, memoryManager, 0.5f, -1); + return Concat3dDim1TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat3dDim2Uint8Test( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor) { return Concat3dDim2TestImpl( - workloadFactory, memoryManager, useSubtensor, 0.5f, -1); + workloadFactory, memoryManager, tensorHandleFactory, useSubtensor, 0.5f, -1); } LayerTestResult Concat3dDim0DiffInputDimsUint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat3dDim0TestImpl(workloadFactory, memoryManager, 0.5f, -1); + return Concat3dDim0TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat3dDim1DiffInputDimsUint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return Concat3dDim1DiffInputDimsTestImpl( - workloadFactory, memoryManager, 0.5f, -1); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat3dDim2DiffInputDimsUint8Test( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor) { return Concat3dDim2DiffInputDimsTestImpl( - workloadFactory, memoryManager, useSubtensor, 0.5f, -1); + workloadFactory, memoryManager, tensorHandleFactory, useSubtensor, 0.5f, -1); } LayerTestResult Concat4dDim0Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat4dDim0TestImpl(workloadFactory, memoryManager, 0.5f, -1); + return Concat4dDim0TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat4dDim1Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat4dDim1TestImpl(workloadFactory, memoryManager, 0.5f, -1); + return Concat4dDim1TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat4dDim2Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return Concat4dDim2TestImpl(workloadFactory, memoryManager, 0.5f, -1); + return Concat4dDim2TestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat4dDim3Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, bool useSubtensor) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor) { return Concat4dDim3TestImpl( - workloadFactory, memoryManager, 0.5f, -1, useSubtensor); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1, useSubtensor); } LayerTestResult Concat4dDiffShapeDim0Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return Concat4dDiffShapeDim0TestImpl( - workloadFactory, memoryManager, 0.5f, -1); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat4dDiffShapeDim1Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return Concat4dDiffShapeDim1TestImpl( - workloadFactory, memoryManager, 0.5f, -1); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat4dDiffShapeDim2Uint8Test( IWorkloadFactory& workloadFactory, - const IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return Concat4dDiffShapeDim2TestImpl( - workloadFactory, memoryManager, 0.5f, -1); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1); } LayerTestResult Concat4dDiffShapeDim3Uint8Test( IWorkloadFactory& workloadFactory, const IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor) { return Concat4dDiffShapeDim3TestImpl( - workloadFactory, memoryManager, 0.5f, -1, useSubtensor); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, -1, useSubtensor); } diff --git a/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.hpp index 167a547542..64e0c0a722 100644 --- a/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.hpp +++ b/src/backends/backendsCommon/test/layerTests/ConcatTestImpl.hpp @@ -18,198 +18,245 @@ template> LayerTestResult ConcatDifferentInputOutputQParamTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); LayerTestResult ConcatTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult ConcatBFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult ConcatFloat16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult ConcatUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult ConcatUint16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult ConcatUint8DifferentQParamsTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat1dTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat2dDim0Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat2dDim1Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat2dDim0DiffInputDimsTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat2dDim1DiffInputDimsTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat3dDim0Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat3dDim1Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat3dDim2Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); LayerTestResult Concat3dDim0DiffInputDimsTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat3dDim1DiffInputDimsTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat3dDim2DiffInputDimsTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); LayerTestResult Concat4dDim0Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDim1Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDim2Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDim3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); LayerTestResult Concat4dDiffShapeDim0Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDiffShapeDim1Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDiffShapeDim2Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDiffShapeDim3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); LayerTestResult Concat4dDim0Uint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDim1Uint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDim2Uint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDim3Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); LayerTestResult Concat4dDiffShapeDim0Uint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDiffShapeDim1Uint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDiffShapeDim2Uint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat4dDiffShapeDim3Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); LayerTestResult Concat1dUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat2dDim0Uint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat2dDim1Uint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat2dDim0DiffInputDimsUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat2dDim1DiffInputDimsUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat3dDim0Uint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat3dDim1Uint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat3dDim2Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); LayerTestResult Concat3dDim0DiffInputDimsUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat3dDim1DiffInputDimsUint8Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult Concat3dDim2DiffInputDimsUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); LayerTestResult ConcatDifferentInputOutputQParamUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); LayerTestResult ConcatDifferentInputOutputQParamInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool useSubtensor); diff --git a/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp index d84a9bf8bc..45c94d345b 100644 --- a/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp +++ b/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.cpp @@ -25,6 +25,7 @@ template> LayerTestResult ConstantTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, float qScale, int32_t qOffset) { @@ -97,9 +98,9 @@ LayerTestResult ConstantTestImpl( LayerTestResult result(outputTensorInfo); result.outputExpected = input; - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::ScopedCpuTensorHandle constantTensor(inputTensorInfo); AllocateAndCopyDataToITensorHandle(&constantTensor, &input[0][0][0][0]); @@ -124,35 +125,40 @@ LayerTestResult ConstantTestImpl( LayerTestResult ConstantTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return ConstantTestImpl(workloadFactory, memoryManager, 0.0f, 0); + return ConstantTestImpl(workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0); } LayerTestResult ConstantInt16SimpleQuantizationScaleNoOffsetTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return ConstantTestImpl(workloadFactory, memoryManager, 1.0f, 0); + return ConstantTestImpl(workloadFactory, memoryManager, tensorHandleFactory, 1.0f, 0); } LayerTestResult ConstantUint8SimpleQuantizationScaleNoOffsetTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return ConstantTestImpl(workloadFactory, memoryManager, 1.0f, 0); + return ConstantTestImpl(workloadFactory, memoryManager, tensorHandleFactory, 1.0f, 0); } LayerTestResult ConstantUint8CustomQuantizationScaleAndOffsetTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return ConstantTestImpl(workloadFactory, memoryManager, 2e-6f, 1); + return ConstantTestImpl(workloadFactory, memoryManager, tensorHandleFactory, 2e-6f, 1); } LayerTestResult ConstantInt16CustomQuantizationScaleAndOffsetTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { - return ConstantTestImpl(workloadFactory, memoryManager, 2e-6f, 1); + return ConstantTestImpl(workloadFactory, memoryManager, tensorHandleFactory, 2e-6f, 1); } diff --git a/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.hpp index 932965a947..71aacb5e62 100644 --- a/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.hpp +++ b/src/backends/backendsCommon/test/layerTests/ConstantTestImpl.hpp @@ -12,20 +12,25 @@ LayerTestResult ConstantTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult ConstantUint8SimpleQuantizationScaleNoOffsetTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult ConstantInt16SimpleQuantizationScaleNoOffsetTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult ConstantUint8CustomQuantizationScaleAndOffsetTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult ConstantInt16CustomQuantizationScaleAndOffsetTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); 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 SimpleConvolution2dTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const boost::multi_array& originalInput, const boost::multi_array& originalKernel, const boost::multi_array& bias, @@ -312,10 +313,10 @@ LayerTestResult SimpleConvolution2dTestImpl( outputData = tmp; } ret.outputExpected = MakeTensor(outputTensorInfo, outputData); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::Convolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -368,6 +369,7 @@ template SimpleConvolution2dNhwcTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const boost::multi_array& input, const boost::multi_array& kernel, const boost::multi_array& bias, @@ -418,10 +420,10 @@ LayerTestResult SimpleConvolution2dNhwcTestImpl( LayerTestResult ret(outputTensorInfo); ret.outputExpected = MakeTensor(outputTensorInfo, outputData); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); AllocateAndCopyDataToITensorHandle(&weightsTensor, &kernel[0][0][0][0]); @@ -461,6 +463,7 @@ template 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 Convolution1dTestImpl( biasData, biasInfo.GetQuantizationScale(), biasInfo.GetQuantizationOffset(), 1, outputSize); } - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputInfo); + armnn::Convolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelInfo); @@ -583,6 +586,7 @@ template> LayerTestResult 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 SimpleConvolution2d3x3NhwcTestCommon( return SimpleConvolution2dNhwcTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, boost::multi_array(), @@ -636,6 +641,7 @@ template> LayerTestResult 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 SimpleConvolution2d3x3Stride2x2TestCommon( return SimpleConvolution2dNhwcTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, boost::multi_array(), @@ -704,6 +711,7 @@ template 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 SimpleConvolution2d3x5TestCommon( return SimpleConvolution2dTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2(biasEnabled, qScale * qScale), @@ -791,6 +800,7 @@ template 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 SimpleConvolution2d3x3TestCommon( return SimpleConvolution2dTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2(biasEnabled, qScale * qScale), @@ -870,6 +881,7 @@ template 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 Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTest return SimpleConvolution2dTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2(false, qScale * qScale), @@ -937,6 +950,7 @@ template 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 SimpleConvolution2dAsymmetricPaddingTestCommon( return SimpleConvolution2dTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2(false, qScale * qScale), @@ -996,6 +1011,7 @@ template Convolution2d3x3DilationTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const std::vector& inputNoQuantizedValues, armnn::TensorInfo& inputTensorInfo, const std::vector& kernelNoQuantizedValues, @@ -1064,6 +1080,7 @@ LayerTestResult Convolution2d3x3DilationTestCommon( return SimpleConvolution2dTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2(biasEnabled, qScale * qScale), @@ -1085,6 +1102,7 @@ template LayerTestResult Convolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -1125,6 +1143,7 @@ LayerTestResult Convolution2d3x3Dilation3x3Test( return Convolution2d3x3DilationTestCommon( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -1141,6 +1160,7 @@ template LayerTestResult Convolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -1196,6 +1216,7 @@ LayerTestResult Convolution2d2x3x3Dilation3x3Test( return Convolution2d3x3DilationTestCommon( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -1212,6 +1233,7 @@ template LayerTestResult Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -1256,6 +1278,7 @@ LayerTestResult Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test( return Convolution2d3x3DilationTestCommon( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -1279,7 +1302,9 @@ template> LayerTestResult 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 CompareConvolution2dTestImpl( auto input = MakeRandomTensor(inputTensorInfo, 124908); auto kernel = MakeRandomTensor(kernelDesc, 891234); auto bias = MakeRandomTensor(biasDesc, 1028); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::Convolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -1342,10 +1367,10 @@ LayerTestResult 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 outputHandleRef = refWorkloadFactory.CreateTensorHandle(outputTensorInfo); - std::unique_ptr inputHandleRef = refWorkloadFactory.CreateTensorHandle(inputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr outputHandleRef = refTensorHandleFactory.CreateTensorHandle(outputTensorInfo); + std::unique_ptr inputHandleRef = refTensorHandleFactory.CreateTensorHandle(inputTensorInfo); + armnn::Convolution2dQueueDescriptor refData = data; armnn::WorkloadInfo refInfo = info; SetWorkloadInput(refData, refInfo, 0, inputTensorInfo, inputHandleRef.get()); @@ -1377,6 +1402,7 @@ LayerTestResult CompareConvolution2dTestImpl( LayerTestResult Convolution2d3x3Stride2x2BFloat16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout& dataLayout) { @@ -1467,6 +1493,7 @@ LayerTestResult Convolution2d3x3Stride2x2BFloat16Test( ( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, boost::multi_array(), @@ -1485,6 +1512,7 @@ LayerTestResult Convolution2d3x3Stride2x2BFloat16Test( LayerTestResult Convolution2d3x3Stride2x2BFloat16SmallValueTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout& dataLayout) { @@ -1575,6 +1603,7 @@ LayerTestResult Convolution2d3x3Stride2x2BFloat16SmallValueTest( ( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, boost::multi_array(), @@ -1599,6 +1628,7 @@ template DepthwiseConvolution2dAsymmetricTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const boost::multi_array& input, const boost::multi_array& kernel, const boost::multi_array& bias, @@ -1689,10 +1719,10 @@ LayerTestResult DepthwiseConvolution2dAsymmetricTestImpl( } ret.outputExpected = MakeTensor(outputTensorInfo, outputData); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); AllocateAndCopyDataToITensorHandle(&weightsTensor, &kernel[0][0][0][0]); @@ -1736,6 +1766,7 @@ template 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 DepthwiseConvolution2dDepthMul1TestImpl( } ret.outputExpected = MakeTensor(outputTensorInfo, outputImage); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::DepthwiseConvolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -1889,6 +1920,7 @@ template 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 DepthwiseConvolution2dTestImpl( } ret.outputExpected = MakeTensor(outputTensorInfo, outputImage); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::DepthwiseConvolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -2102,6 +2134,7 @@ template DepthwiseConvolution2dTestImpl( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const boost::multi_array& originalInput, const boost::multi_array& originalKernel, const boost::multi_array& bias, @@ -2214,10 +2247,10 @@ LayerTestResult DepthwiseConvolution2dTestImpl( outputData = tmp; } ret.outputExpected = MakeTensor(outputTensorInfo, outputData); -ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); -ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::DepthwiseConvolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -2265,6 +2298,7 @@ template 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 DepthwiseConvolution2dAsymmetricTestCommon( return DepthwiseConvolution2dAsymmetricTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2(biasEnabled, qScale * qScale), @@ -2349,6 +2384,7 @@ template 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 DepthwiseConvolution2dNhwcTestCommon( return DepthwiseConvolution2dTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2(biasEnabled, qScale * qScale), @@ -2430,6 +2467,7 @@ template 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 SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTestCommon( return DepthwiseConvolution2dTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias2(biasEnabled, qScale * qScale), @@ -2506,6 +2545,7 @@ template DepthwiseConvolution2d3x3DilationTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const std::vector& inputNoQuantizedValues, armnn::TensorInfo& inputTensorInfo, const std::vector& kernelNoQuantizedValues, @@ -2574,6 +2614,7 @@ LayerTestResult DepthwiseConvolution2d3x3DilationTestCommon( return DepthwiseConvolution2dTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, GetBias(biasEnabled, qScale * qScale, outputTensorInfo, layout), @@ -2595,6 +2636,7 @@ template LayerTestResult DepthwiseConvolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -2635,6 +2677,7 @@ LayerTestResult DepthwiseConvolution2d3x3Dilation3x3Test( return DepthwiseConvolution2d3x3DilationTestCommon( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -2651,6 +2694,7 @@ template LayerTestResult DepthwiseConvolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -2711,6 +2755,7 @@ LayerTestResult DepthwiseConvolution2d2x3x3Dilation3x3Test( return DepthwiseConvolution2d3x3DilationTestCommon( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -2727,6 +2772,7 @@ template LayerTestResult DepthwiseConvolution2dMult4Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -2803,6 +2849,7 @@ LayerTestResult DepthwiseConvolution2dMult4Test( return DepthwiseConvolution2d3x3DilationTestCommon( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -2819,6 +2866,7 @@ template LayerTestResult DepthwiseConvolution2dMult2Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { @@ -2872,6 +2920,7 @@ LayerTestResult DepthwiseConvolution2dMult2Test( return DepthwiseConvolution2d3x3DilationTestCommon( workloadFactory, memoryManager, + tensorHandleFactory, inputNoQuantizedValues, inputTensorInfo, kernelNoQuantizedValues, @@ -2889,6 +2938,8 @@ LayerTestResult 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 CompareDepthwiseConvolution2dTestImpl( auto kernel = MakeRandomTensor(kernelDesc, 891234, 0.0f, 255.0f); auto bias = MakeRandomTensor::Type, 1>( biasDesc, 1028, 0.0f, 255.0f); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::DepthwiseConvolution2dQueueDescriptor data; armnn::WorkloadInfo info; armnn::ScopedCpuTensorHandle weightsTensor(kernelDesc); @@ -2975,10 +3026,10 @@ LayerTestResult 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 outputHandleRef = refWorkloadFactory.CreateTensorHandle(outputTensorInfo); - std::unique_ptr inputHandleRef = refWorkloadFactory.CreateTensorHandle(inputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr outputHandleRef = refTensorHandleFactory.CreateTensorHandle(outputTensorInfo); + std::unique_ptr 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, 4> Convolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3021,6 +3073,7 @@ template LayerTestResult, 4> Convolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3028,6 +3081,7 @@ template LayerTestResult, 4> Convolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3035,6 +3089,7 @@ template LayerTestResult, 4> Convolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3042,6 +3097,7 @@ template LayerTestResult, 4> Convolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3049,6 +3105,7 @@ template LayerTestResult, 4> Convolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3056,6 +3113,7 @@ template LayerTestResult, 4> Convolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3063,6 +3121,7 @@ template LayerTestResult, 4> Convolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3070,6 +3129,7 @@ template LayerTestResult, 4> Convolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3077,6 +3137,7 @@ template LayerTestResult, 4> Convolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3084,6 +3145,7 @@ template LayerTestResult, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3091,6 +3153,7 @@ template LayerTestResult, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3098,6 +3161,7 @@ template LayerTestResult, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3105,6 +3169,7 @@ template LayerTestResult, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3112,6 +3177,7 @@ template LayerTestResult, 4> Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3119,6 +3185,7 @@ template LayerTestResult, 4> DepthwiseConvolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3126,6 +3193,7 @@ template LayerTestResult, 4> DepthwiseConvolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3133,6 +3201,7 @@ template LayerTestResult, 4> DepthwiseConvolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3140,6 +3209,7 @@ template LayerTestResult, 4> DepthwiseConvolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3147,6 +3217,7 @@ template LayerTestResult, 4> DepthwiseConvolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3154,6 +3225,7 @@ template LayerTestResult, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3161,6 +3233,7 @@ template LayerTestResult, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3168,6 +3241,7 @@ template LayerTestResult, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3175,6 +3249,7 @@ template LayerTestResult, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3182,6 +3257,7 @@ template LayerTestResult, 4> DepthwiseConvolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory&, const armnn::IBackendInternal::IMemoryManagerSharedPtr&, + const armnn::ITensorHandleFactory&, bool, armnn::DataLayout); @@ -3189,6 +3265,7 @@ template LayerTestResult, 4> DepthwiseConvolution2dMult4Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3196,6 +3273,7 @@ template LayerTestResult, 4> DepthwiseConvolution2dMult4Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3203,6 +3281,7 @@ template LayerTestResult, 4> DepthwiseConvolution2dMult2Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3210,6 +3289,7 @@ template LayerTestResult, 4> DepthwiseConvolution2dMult2Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -3220,41 +3300,46 @@ DepthwiseConvolution2dMult2Test SimpleConvolution2d3x5Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x5TestCommon( - workloadFactory, memoryManager, 0.f, 0, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.f, 0, biasEnabled, layout); } LayerTestResult SimpleConvolution2d3x5Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x5TestCommon( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult SimpleConvolution2d3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x3TestCommon( - workloadFactory, memoryManager, 0.f, 0, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.f, 0, biasEnabled, layout); } LayerTestResult SimpleConvolution2d3x3NhwcTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled) { return SimpleConvolution2d3x3NhwcTestCommon( workloadFactory, memoryManager, + tensorHandleFactory, 0.f, 0, biasEnabled, @@ -3264,12 +3349,14 @@ LayerTestResult SimpleConvolution2d3x3NhwcTest( LayerTestResult SimpleConvolution2d3x3Stride2x2Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x3Stride2x2TestCommon( workloadFactory, memoryManager, + tensorHandleFactory, 0.f, 0, biasEnabled, @@ -3279,73 +3366,81 @@ LayerTestResult SimpleConvolution2d3x3Stride2x2Test( LayerTestResult SimpleConvolution2d3x3Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x3TestCommon( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult SimpleConvolution2d3x5QSymm16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x5TestCommon( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult SimpleConvolution2d3x3QSymm16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return SimpleConvolution2d3x3TestCommon( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult Convolution2dAsymmetricPaddingTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, armnn::DataLayout layout) { return SimpleConvolution2dAsymmetricPaddingTestCommon( - workloadFactory, memoryManager, layout, 0.0f, 0); + workloadFactory, memoryManager, tensorHandleFactory, layout, 0.0f, 0); } LayerTestResult Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, armnn::DataLayout layout) { return Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTestCommon ( - workloadFactory, memoryManager, layout, 0.0f, 0); + workloadFactory, memoryManager, tensorHandleFactory, layout, 0.0f, 0); } LayerTestResult Convolution1dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled) { return Convolution1dTestImpl( - workloadFactory, memoryManager, 0.0f, 0, biasEnabled); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, biasEnabled); } LayerTestResult Convolution1dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled) { return Convolution1dTestImpl( - workloadFactory, memoryManager, 0.1f, 128, biasEnabled); + workloadFactory, memoryManager, tensorHandleFactory, 0.1f, 128, biasEnabled); } LayerTestResult 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 Convolution2dPerAxisQuantTest( descriptor.m_BiasEnabled = true; descriptor.m_DataLayout = layout; - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputInfo); + WorkloadInfo workloadInfo; ScopedCpuTensorHandle weightTensor(kernelInfo); @@ -3440,44 +3535,50 @@ LayerTestResult Convolution2dPerAxisQuantTest( LayerTestResult 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( - workloadFactory, memoryManager, refWorkloadFactory); + workloadFactory, memoryManager, refWorkloadFactory, tensorHandleFactory, refTensorHandleFactory); } LayerTestResult DepthwiseConvolution2dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dTestImpl( - workloadFactory, memoryManager, 0.0f, 0, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, biasEnabled, layout); } LayerTestResult DepthwiseConvolution2dDepthNhwcTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled) { return DepthwiseConvolution2dNhwcTestCommon( - workloadFactory, memoryManager, 0.0f, 0, biasEnabled); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, biasEnabled); } LayerTestResult DepthwiseConvolution2dDepthMul1Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dDepthMul1TestImpl( - workloadFactory, memoryManager, 0.0f, 0, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, biasEnabled, layout); } LayerTestResult 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(inputTensorInfo, { 1.f, 2.f, 3.f, 4.f }); @@ -3498,6 +3599,7 @@ LayerTestResult DepthwiseConvolution2dDepthMul64Test( return DepthwiseConvolution2dTestImpl( workloadFactory, memoryManager, + tensorHandleFactory, input, kernel, boost::multi_array(), @@ -3510,40 +3612,45 @@ LayerTestResult DepthwiseConvolution2dDepthMul64Test( LayerTestResult DepthwiseConvolution2dAsymmetricTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dAsymmetricTestCommon( - workloadFactory, memoryManager, 0.0f, 0, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.0f, 0, biasEnabled, layout); } LayerTestResult DepthwiseConvolution2dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dTestImpl( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult DepthwiseConvolution2dDepthMul1Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dDepthMul1TestImpl( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { return SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTestCommon( workloadFactory, memoryManager, + tensorHandleFactory, 0.f, 0, false); @@ -3552,26 +3659,29 @@ LayerTestResult SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTest( LayerTestResult DepthwiseConvolution2dInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dTestImpl( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult DepthwiseConvolution2dDepthMul1Int16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout) { return DepthwiseConvolution2dDepthMul1TestImpl( - workloadFactory, memoryManager, 0.5f, 50, biasEnabled, layout); + workloadFactory, memoryManager, tensorHandleFactory, 0.5f, 50, biasEnabled, layout); } LayerTestResult 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 DepthwiseConvolution2dPerAxisQuantTest( descriptor.m_BiasEnabled = true; descriptor.m_DataLayout = layout; - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputInfo); - ARMNN_NO_DEPRECATE_WARN_END + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputInfo); WorkloadInfo workloadInfo; ScopedCpuTensorHandle weightTensor(kernelInfo); @@ -3683,18 +3791,22 @@ LayerTestResult 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( - workloadFactory, memoryManager, refWorkloadFactory, layout); + workloadFactory, memoryManager, refWorkloadFactory, tensorHandleFactory, refTensorHandleFactory, layout); } LayerTestResult 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( - workloadFactory, memoryManager, refWorkloadFactory, layout); + workloadFactory, memoryManager, refWorkloadFactory, tensorHandleFactory, refTensorHandleFactory, layout); } diff --git a/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.hpp b/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.hpp index 21c4cf9bf0..1f54034703 100644 --- a/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.hpp +++ b/src/backends/backendsCommon/test/layerTests/Conv2dTestImpl.hpp @@ -22,6 +22,7 @@ template Convolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -29,6 +30,7 @@ template Convolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -36,95 +38,113 @@ template Convolution2d2x2Dilation2x2Padding2x2Stride3x3Test( armnn::IWorkloadFactory &workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr &memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult SimpleConvolution2d3x5Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult SimpleConvolution2d3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult SimpleConvolution2d3x3Stride2x2Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult SimpleConvolution2d3x3NhwcTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled); LayerTestResult SimpleConvolution2d3x5Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult SimpleConvolution2d3x3Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult SimpleConvolution2d3x5QSymm16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult SimpleConvolution2d3x3QSymm16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult Convolution2dAsymmetricPaddingLargerThanHalfKernelSizeTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, armnn::DataLayout layout); LayerTestResult Convolution2dAsymmetricPaddingTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, armnn::DataLayout layout); LayerTestResult Convolution1dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled); LayerTestResult Convolution1dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled); LayerTestResult CompareConvolution2dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, - armnn::IWorkloadFactory& refWorkloadFactory); + armnn::IWorkloadFactory& refWorkloadFactory, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::ITensorHandleFactory& refTensorHandleFactory); LayerTestResult Convolution2dPerAxisQuantTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::DataLayout layout); LayerTestResult Convolution2d3x3Stride2x2BFloat16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout& dataLayout); LayerTestResult Convolution2d3x3Stride2x2BFloat16SmallValueTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout& dataLayout); @@ -136,6 +156,7 @@ template DepthwiseConvolution2d3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -143,6 +164,7 @@ template DepthwiseConvolution2d2x3x3Dilation3x3Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -150,6 +172,7 @@ template DepthwiseConvolution2dMult4Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -157,6 +180,7 @@ template DepthwiseConvolution2dMult2Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); @@ -165,76 +189,93 @@ LayerTestResult CompareDepthwiseConvolution2dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, armnn::IWorkloadFactory& refWorkloadFactory, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::ITensorHandleFactory& refTensorHandleFactory, const armnn::DataLayout layout); LayerTestResult DepthwiseConvolution2dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult DepthwiseConvolution2dDepthNhwcTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled); LayerTestResult DepthwiseConvolution2dDepthMul1Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult DepthwiseConvolution2dDepthMul64Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult DepthwiseConvolution2dAsymmetricTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult SimpleDepthwiseConvolution2d3x3Dilation3x3NhwcTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); LayerTestResult DepthwiseConvolution2dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult DepthwiseConvolution2dDepthMul1Uint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult DepthwiseConvolution2dInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult DepthwiseConvolution2dDepthMul1Int16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, bool biasEnabled, const armnn::DataLayout layout); LayerTestResult DepthwiseConvolution2dPerAxisQuantTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory, const armnn::DataLayout layout); LayerTestResult CompareDepthwiseConvolution2dFloatTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, armnn::IWorkloadFactory& refWorkloadFactory, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::ITensorHandleFactory& refTensorHandleFactory, const armnn::DataLayout layout); LayerTestResult CompareDepthwiseConvolution2dUint8Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, armnn::IWorkloadFactory& refWorkloadFactory, + const armnn::ITensorHandleFactory& tensorHandleFactory, + const armnn::ITensorHandleFactory& refTensorHandleFactory, const armnn::DataLayout layout); diff --git a/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp index e85af5683f..fdc6220d51 100644 --- a/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp +++ b/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.cpp @@ -12,7 +12,8 @@ LayerTestResult ConvertBf16ToFp32Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { IgnoreUnused(memoryManager); @@ -33,10 +34,8 @@ LayerTestResult ConvertBf16ToFp32Test( { -37.5f, -15.2f, -8.76f, -2.0f, -1.5f, -1.3f, -0.5f, -0.4f, 0.0f, 1.0f, 0.4f, 0.5f, 1.3f, 1.5f, 2.0f, 8.76f, 15.2f, 37.5f }); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); armnn::ConvertBf16ToFp32QueueDescriptor data; armnn::WorkloadInfo info; diff --git a/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.hpp index 717ec6a121..08f4c04074 100644 --- a/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.hpp +++ b/src/backends/backendsCommon/test/layerTests/ConvertBf16ToFp32TestImpl.hpp @@ -14,4 +14,5 @@ LayerTestResult ConvertBf16ToFp32Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp index fa2341e3a4..8745a5293b 100644 --- a/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp +++ b/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.cpp @@ -15,7 +15,8 @@ LayerTestResult SimpleConvertFp16ToFp32Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { IgnoreUnused(memoryManager); using namespace half_float::literal; @@ -31,10 +32,10 @@ LayerTestResult SimpleConvertFp16ToFp32Test( ret.outputExpected = MakeTensor(outputTensorInfo, { -37.5f, -15.2f, -8.76f, -2.0f, -1.5f, -1.3f, -0.5f, -0.4f, 0.0f, 1.0f, 0.4f, 0.5f, 1.3f, 1.5f, 2.0f, 8.76f, 15.2f, 37.5f }); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::ConvertFp16ToFp32QueueDescriptor data; armnn::WorkloadInfo info; AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get()); diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.hpp index f0f1a4bfb5..8eefb77892 100644 --- a/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.hpp +++ b/src/backends/backendsCommon/test/layerTests/ConvertFp16ToFp32TestImpl.hpp @@ -12,4 +12,5 @@ LayerTestResult SimpleConvertFp16ToFp32Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp index c721304b84..db832594cd 100644 --- a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp +++ b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.cpp @@ -12,7 +12,8 @@ LayerTestResult ConvertFp32ToBf16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { IgnoreUnused(memoryManager); @@ -53,10 +54,10 @@ LayerTestResult ConvertFp32ToBf16Test( LayerTestResult ret(outputTensorInfo); ret.outputExpected = MakeTensor(outputTensorInfo, outputValues); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::ConvertFp32ToBf16QueueDescriptor data; armnn::WorkloadInfo info; AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get()); diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.hpp index 4c6125f585..9e1da65c2e 100644 --- a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.hpp +++ b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToBf16TestImpl.hpp @@ -14,4 +14,5 @@ LayerTestResult ConvertFp32ToBf16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp index 2041470aeb..5fbec56435 100644 --- a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp +++ b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.cpp @@ -13,7 +13,8 @@ LayerTestResult SimpleConvertFp32ToFp16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory) { IgnoreUnused(memoryManager); using namespace half_float::literal; @@ -29,10 +30,10 @@ LayerTestResult SimpleConvertFp32ToFp16Test( ret.outputExpected = MakeTensor(outputTensorInfo, { -37.5_h, -15.2_h, -8.76_h, -2.0_h, -1.5_h, -1.3_h, -0.5_h, -0.4_h, 0.0_h, 1.0_h, 0.4_h, 0.5_h, 1.3_h, 1.5_h, 2.0_h, 8.76_h, 15.2_h, 37.5_h }); - ARMNN_NO_DEPRECATE_WARN_BEGIN - std::unique_ptr inputHandle = workloadFactory.CreateTensorHandle(inputTensorInfo); - std::unique_ptr outputHandle = workloadFactory.CreateTensorHandle(outputTensorInfo); - ARMNN_NO_DEPRECATE_WARN_END + + std::unique_ptr inputHandle = tensorHandleFactory.CreateTensorHandle(inputTensorInfo); + std::unique_ptr outputHandle = tensorHandleFactory.CreateTensorHandle(outputTensorInfo); + armnn::ConvertFp32ToFp16QueueDescriptor data; armnn::WorkloadInfo info; AddInputToWorkload(data, info, inputTensorInfo, inputHandle.get()); diff --git a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.hpp b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.hpp index 263724710c..39dc8a4d4d 100644 --- a/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.hpp +++ b/src/backends/backendsCommon/test/layerTests/ConvertFp32ToFp16TestImpl.hpp @@ -14,4 +14,5 @@ LayerTestResult SimpleConvertFp32ToFp16Test( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + const armnn::ITensorHandleFactory& tensorHandleFactory); -- cgit v1.2.1