diff options
Diffstat (limited to 'src/backends')
-rw-r--r-- | src/backends/backendsCommon/test/ActivationTestImpl.hpp | 99 | ||||
-rw-r--r-- | src/backends/backendsCommon/test/LayerTests.hpp | 55 | ||||
-rw-r--r-- | src/backends/reference/test/RefLayerTests.cpp | 15 |
3 files changed, 169 insertions, 0 deletions
diff --git a/src/backends/backendsCommon/test/ActivationTestImpl.hpp b/src/backends/backendsCommon/test/ActivationTestImpl.hpp index 1a5bcd4fbb..9088d18858 100644 --- a/src/backends/backendsCommon/test/ActivationTestImpl.hpp +++ b/src/backends/backendsCommon/test/ActivationTestImpl.hpp @@ -548,6 +548,21 @@ LayerTestResult<int16_t, 4> ReLuInt16Test( } +LayerTestResult<uint8_t, 4> ReLuUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return ReLuTestCommon<armnn::DataType::QuantisedAsymm8>(workloadFactory, memoryManager, 0.1f, 0); +} + +LayerTestResult<float, 4> ReLuTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return ReLuTestCommon<armnn::DataType::Float32>(workloadFactory, memoryManager, 0.1f, 0); +} + + template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>> LayerTestResult<T, 4> BoundedReLuTestCommon( armnn::IWorkloadFactory& workloadFactory, @@ -624,6 +639,20 @@ LayerTestResult<T, 4> SoftReLuTestCommon( outputExpectedData); } +LayerTestResult<float, 4> SoftReLuTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return SoftReLuTestCommon<armnn::DataType::Float32>(workloadFactory, memoryManager, 0.1f, 0); +} + +LayerTestResult<uint8_t, 4> SoftReLuUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return SoftReLuTestCommon<armnn::DataType::QuantisedAsymm8>(workloadFactory, memoryManager, 0.0625f, 64); +} + LayerTestResult<int16_t, 4> SoftReLuInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) @@ -665,6 +694,20 @@ LayerTestResult<T, 4> LeakyReLuTestCommon( outputExpectedData); } +LayerTestResult<float, 4> LeakyReLuTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return LeakyReLuTestCommon<armnn::DataType::Float32>(workloadFactory, memoryManager, 0.1f, 0); +} + +LayerTestResult<uint8_t, 4> LeakyReLuUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return LeakyReLuTestCommon<armnn::DataType::QuantisedAsymm8>(workloadFactory, memoryManager, 0.0625f, 64); +} + LayerTestResult<int16_t, 4> LeakyReLuInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) @@ -705,6 +748,20 @@ LayerTestResult<T, 4> AbsTestCommon( outputExpectedData); } +LayerTestResult<float, 4> AbsTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return AbsTestCommon<armnn::DataType::Float32>(workloadFactory, memoryManager, 0.1f, 0); +} + +LayerTestResult<uint8_t, 4> AbsUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return AbsTestCommon<armnn::DataType::QuantisedAsymm8>(workloadFactory, memoryManager, 0.0625f, 64); +} + LayerTestResult<int16_t, 4> AbsInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) @@ -745,6 +802,20 @@ LayerTestResult<T, 4> SqrtTestCommon( outputExpectedData); } +LayerTestResult<float, 4> SqrtTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return SqrtTestCommon<armnn::DataType::Float32>(workloadFactory, memoryManager, 0.1f, 0); +} + +LayerTestResult<uint8_t, 4> SqrtUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return SqrtTestCommon<armnn::DataType::QuantisedAsymm8>(workloadFactory, memoryManager, 0.0625f, 64); +} + LayerTestResult<int16_t, 4> SqrtInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) @@ -785,6 +856,20 @@ LayerTestResult<T, 4> SquareTestCommon( outputExpectedData); } +LayerTestResult<float, 4> SquareTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return SquareTestCommon<armnn::DataType::Float32>(workloadFactory, memoryManager, 0.1f, 0); +} + +LayerTestResult<uint8_t, 4> SquareUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return SquareTestCommon<armnn::DataType::QuantisedAsymm8>(workloadFactory, memoryManager, 0.0625f, 64); +} + LayerTestResult<int16_t, 4> SquareInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) @@ -827,6 +912,20 @@ LayerTestResult<T, 4> TanhTestCommon( outputExpectedData); } +LayerTestResult<float, 4> TanhTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return TanhTestCommon<armnn::DataType::Float32>(workloadFactory, memoryManager, 0.1f, 0); +} + +LayerTestResult<uint8_t, 4> TanhUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) +{ + return TanhTestCommon<armnn::DataType::QuantisedAsymm8>(workloadFactory, memoryManager, 0.1f, 64); +} + LayerTestResult<int16_t, 4> TanhInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager) diff --git a/src/backends/backendsCommon/test/LayerTests.hpp b/src/backends/backendsCommon/test/LayerTests.hpp index b035d13488..19105855e1 100644 --- a/src/backends/backendsCommon/test/LayerTests.hpp +++ b/src/backends/backendsCommon/test/LayerTests.hpp @@ -754,6 +754,13 @@ LayerTestResult<float, 4> CompareBoundedReLuTest( float upperBound, float lowerBound); +LayerTestResult<float, 4> ReLuTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + +LayerTestResult<uint8_t, 4> ReLuUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); LayerTestResult<int16_t, 4> ReLuInt16Test( armnn::IWorkloadFactory& workloadFactory, @@ -763,26 +770,74 @@ LayerTestResult<int16_t, 4> BoundedReLuInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); +LayerTestResult<float, 4> SoftReLuTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + +LayerTestResult<uint8_t, 4> SoftReLuUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + LayerTestResult<int16_t, 4> SoftReLuInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); +LayerTestResult<float, 4> LeakyReLuTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + +LayerTestResult<uint8_t, 4> LeakyReLuUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + LayerTestResult<int16_t, 4> LeakyReLuInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); +LayerTestResult<float, 4> AbsTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + +LayerTestResult<uint8_t, 4> AbsUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + LayerTestResult<int16_t, 4> AbsInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); +LayerTestResult<float, 4> SqrtTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + +LayerTestResult<uint8_t, 4> SqrtUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + LayerTestResult<int16_t, 4> SqrtInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); +LayerTestResult<float, 4> SquareTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + +LayerTestResult<uint8_t, 4> SquareUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + LayerTestResult<int16_t, 4> SquareInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); +LayerTestResult<float, 4> TanhTest( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + +LayerTestResult<uint8_t, 4> TanhUint8Test( + armnn::IWorkloadFactory& workloadFactory, + const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); + LayerTestResult<int16_t, 4> TanhInt16Test( armnn::IWorkloadFactory& workloadFactory, const armnn::IBackendInternal::IMemoryManagerSharedPtr& memoryManager); diff --git a/src/backends/reference/test/RefLayerTests.cpp b/src/backends/reference/test/RefLayerTests.cpp index 35ce5b3eda..efdd1efb82 100644 --- a/src/backends/reference/test/RefLayerTests.cpp +++ b/src/backends/reference/test/RefLayerTests.cpp @@ -242,24 +242,39 @@ ARMNN_AUTO_TEST_CASE(ReLu6Uint8, BoundedReLuUint8UpperBoundOnlyTest) ARMNN_AUTO_TEST_CASE(BoundedReLuInt16, BoundedReLuInt16Test) // ReLU Activation +ARMNN_AUTO_TEST_CASE(ReLu, ReLuTest) +ARMNN_AUTO_TEST_CASE(ReLuUint8, ReLuUint8Test) ARMNN_AUTO_TEST_CASE(ReLuInt16, ReLuInt16Test) // SoftReLU Activation +ARMNN_AUTO_TEST_CASE(SoftReLu, SoftReLuTest) +ARMNN_AUTO_TEST_CASE(SoftReLuUint8, SoftReLuUint8Test) ARMNN_AUTO_TEST_CASE(SoftReLuInt16, SoftReLuInt16Test) + // LeakyReLU Activation +ARMNN_AUTO_TEST_CASE(LeakyReLu, LeakyReLuTest) +ARMNN_AUTO_TEST_CASE(LeakyReLuUint8, LeakyReLuUint8Test) ARMNN_AUTO_TEST_CASE(LeakyReLuInt16, LeakyReLuInt16Test) // Abs Activation +ARMNN_AUTO_TEST_CASE(Abs, AbsTest) +ARMNN_AUTO_TEST_CASE(AbsUint8, AbsUint8Test) ARMNN_AUTO_TEST_CASE(AbsInt16, AbsInt16Test) // Sqrt Activation +ARMNN_AUTO_TEST_CASE(Sqrt, SqrtTest) +ARMNN_AUTO_TEST_CASE(SqrtUint8, SqrtUint8Test) ARMNN_AUTO_TEST_CASE(SqrtInt16, SqrtInt16Test) // Square Activation +ARMNN_AUTO_TEST_CASE(Square, SquareTest) +ARMNN_AUTO_TEST_CASE(SquareUint8, SquareUint8Test) ARMNN_AUTO_TEST_CASE(SquareInt16, SquareInt16Test) // Tanh Activation +ARMNN_AUTO_TEST_CASE(Tanh, TanhTest) +ARMNN_AUTO_TEST_CASE(TanhUint8, TanhUint8Test) ARMNN_AUTO_TEST_CASE(TanhInt16, TanhInt16Test) |