From e6eaf661c5b84f4ca051daaf08281d9b8de3fcb9 Mon Sep 17 00:00:00 2001 From: Narumol Prangnawarat Date: Mon, 8 Jul 2019 08:57:17 +0100 Subject: IVGCVSW-3399 Add support of QuantisedSymm16 to Pad * Add support of QuantisedSymm16 to Pad * Fix custom padding tests * Add unit tests for Pad QuantisedSymm16 Signed-off-by: Narumol Prangnawarat Change-Id: Ieb9a4492760b13fa030a42eb4d38fd9ffd7a8c76 --- src/backends/backendsCommon/test/LayerTests.cpp | 37 ++++++++++++++++++++----- src/backends/backendsCommon/test/LayerTests.hpp | 24 +++++++++++++++- 2 files changed, 53 insertions(+), 8 deletions(-) (limited to 'src/backends/backendsCommon') diff --git a/src/backends/backendsCommon/test/LayerTests.cpp b/src/backends/backendsCommon/test/LayerTests.cpp index e8257fdc7a..82dda3b342 100644 --- a/src/backends/backendsCommon/test/LayerTests.cpp +++ b/src/backends/backendsCommon/test/LayerTests.cpp @@ -6030,13 +6030,13 @@ float CalcInvL2Norm(std::initializer_list elements) } // anonymous namespace -template> +template LayerTestResult Pad2dTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, float qScale, int32_t qOffset, - const float customPaddingValue = 0) + const float customPaddingValue) { const armnn::TensorShape inputShape{ 3, 3 }; const armnn::TensorShape outputShape{ 7, 7 }; @@ -6103,7 +6103,7 @@ LayerTestResult Pad2dTestCommon( return result; } -template> +template LayerTestResult Pad3dTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, @@ -6188,7 +6188,7 @@ LayerTestResult Pad3dTestCommon( return result; } -template> +template LayerTestResult Pad4dTestCommon( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, @@ -6437,7 +6437,7 @@ LayerTestResult PadUint82dCustomPaddingTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) { - return Pad2dTestCommon(workloadFactory, memoryManager, 1.0f, 0, 1); + return Pad2dTestCommon(workloadFactory, memoryManager, 1.0f, 0, 1.0f); } LayerTestResult PadUint83dTest( @@ -6454,6 +6454,29 @@ LayerTestResult PadUint84dTest( return Pad4dTestCommon(workloadFactory, memoryManager, 1.0f, 0); } + +template LayerTestResult, 2> +Pad2dTestCommon( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + float qScale, + int32_t qOffset, + const float customPaddingValue); + +template LayerTestResult, 3> +Pad3dTestCommon( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + float qScale, + int32_t qOffset); + +template LayerTestResult, 4> +Pad4dTestCommon( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + float qScale, + int32_t qOffset); + LayerTestResult PadFloat322dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) @@ -6465,7 +6488,7 @@ LayerTestResult PadFloat322dCustomPaddingTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) { - return Pad2dTestCommon(workloadFactory, memoryManager, 0.0f, 0, 1); + return Pad2dTestCommon(workloadFactory, memoryManager, 0.0f, 0, 1.0f); } LayerTestResult PadFloat323dTest( @@ -10198,4 +10221,4 @@ LayerTestResult UnbiasedStridedTransposeConvolution2dInt16NhwcTest( memoryManager, false, armnn::DataLayout::NHWC); -} \ No newline at end of file +} diff --git a/src/backends/backendsCommon/test/LayerTests.hpp b/src/backends/backendsCommon/test/LayerTests.hpp index 4eb01accc4..108ea79070 100644 --- a/src/backends/backendsCommon/test/LayerTests.hpp +++ b/src/backends/backendsCommon/test/LayerTests.hpp @@ -1438,6 +1438,28 @@ LayerTestResult PadFloat324dTest( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); +template> +LayerTestResult Pad2dTestCommon( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + float qScale, + int32_t qOffset, + const float customPaddingValue = 0.0f); + +template> +LayerTestResult Pad3dTestCommon( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + float qScale, + int32_t qOffset); + +template> +LayerTestResult Pad4dTestCommon( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager, + float qScale, + int32_t qOffset); + void LstmUtilsZeroVectorTest(); void LstmUtilsMeanStddevNormalizationNoneZeroInputTest(); void LstmUtilsMeanStddevNormalizationAllZeroInputTest(); @@ -4446,4 +4468,4 @@ LayerTestResult UnbiasedStridedTransposeConvolution2dInt16NchwTest( LayerTestResult UnbiasedStridedTransposeConvolution2dInt16NhwcTest( armnn::IWorkloadFactory& workloadFactory, - const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); \ No newline at end of file + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); -- cgit v1.2.1