diff options
Diffstat (limited to 'src/backends/neon/test')
-rw-r--r-- | src/backends/neon/test/NeonEndToEndTests.cpp | 41 | ||||
-rw-r--r-- | src/backends/neon/test/NeonLayerTests.cpp | 8 |
2 files changed, 49 insertions, 0 deletions
diff --git a/src/backends/neon/test/NeonEndToEndTests.cpp b/src/backends/neon/test/NeonEndToEndTests.cpp index 665791a36a..deaa8eb81b 100644 --- a/src/backends/neon/test/NeonEndToEndTests.cpp +++ b/src/backends/neon/test/NeonEndToEndTests.cpp @@ -5,6 +5,7 @@ #include <backendsCommon/test/EndToEndTestImpl.hpp> #include <backendsCommon/test/MergerTestImpl.hpp> +#include <backendsCommon/test/ArithmeticTestImpl.hpp> #include <boost/test/unit_test.hpp> @@ -51,6 +52,46 @@ BOOST_AUTO_TEST_CASE(FallbackToCpuRef) BOOST_TEST(runtime->LoadNetwork(netId, std::move(optNet)) == Status::Success); } +BOOST_AUTO_TEST_CASE(NeonGreaterSimpleEndToEndTest) +{ + const std::vector<uint8_t> expectedOutput({ 0, 0, 0, 0, 1, 1, 1, 1, + 0, 0, 0, 0, 0, 0, 0, 0 }); + + ArithmeticSimpleEndToEnd<armnn::DataType::Float32, armnn::DataType::Boolean>(defaultBackends, + LayerType::Greater, + expectedOutput); +} + +BOOST_AUTO_TEST_CASE(NeonGreaterSimpleEndToEndUint8Test) +{ + const std::vector<uint8_t> expectedOutput({ 0, 0, 0, 0, 1, 1, 1, 1, + 0, 0, 0, 0, 0, 0, 0, 0 }); + + ArithmeticSimpleEndToEnd<armnn::DataType::QuantisedAsymm8, armnn::DataType::Boolean>(defaultBackends, + LayerType::Greater, + expectedOutput); +} + +BOOST_AUTO_TEST_CASE(NeonGreaterBroadcastEndToEndTest) +{ + const std::vector<uint8_t> expectedOutput({ 0, 1, 0, 0, 0, 1, + 1, 1, 1, 1, 1, 1 }); + + ArithmeticBroadcastEndToEnd<armnn::DataType::Float32, armnn::DataType::Boolean>(defaultBackends, + LayerType::Greater, + expectedOutput); +} + +BOOST_AUTO_TEST_CASE(NeonGreaterBroadcastEndToEndUint8Test) +{ + const std::vector<uint8_t> expectedOutput({ 0, 1, 0, 0, 0, 1, + 1, 1, 1, 1, 1, 1 }); + + ArithmeticBroadcastEndToEnd<armnn::DataType::QuantisedAsymm8, armnn::DataType::Boolean>(defaultBackends, + LayerType::Greater, + expectedOutput); +} + BOOST_AUTO_TEST_CASE(NeonMergerEndToEndDim0Test) { MergerDim0EndToEnd<armnn::DataType::Float32>(defaultBackends); diff --git a/src/backends/neon/test/NeonLayerTests.cpp b/src/backends/neon/test/NeonLayerTests.cpp index b229cd020c..8b93c43327 100644 --- a/src/backends/neon/test/NeonLayerTests.cpp +++ b/src/backends/neon/test/NeonLayerTests.cpp @@ -382,6 +382,14 @@ ARMNN_AUTO_TEST_CASE(L2Normalization4dNhwc, L2Normalization4dTest, armnn::DataLa // Floor ARMNN_AUTO_TEST_CASE(SimpleFloor, SimpleFloorTest) +// Greater +ARMNN_AUTO_TEST_CASE(SimpleGreater, GreaterSimpleTest) +ARMNN_AUTO_TEST_CASE(GreaterBroadcast1Element, GreaterBroadcast1ElementTest) +ARMNN_AUTO_TEST_CASE(GreaterBroadcast1DVector, GreaterBroadcast1DVectorTest) +ARMNN_AUTO_TEST_CASE(GreaterUint8, GreaterUint8Test) +ARMNN_AUTO_TEST_CASE(GreaterBroadcast1ElementUint8, GreaterBroadcast1ElementUint8Test) +ARMNN_AUTO_TEST_CASE(GreaterBroadcast1DVectorUint8, GreaterBroadcast1DVectorUint8Test) + // Reshape ARMNN_AUTO_TEST_CASE(SimpleReshapeFloat32, SimpleReshapeFloat32Test) ARMNN_AUTO_TEST_CASE(SimpleReshapeUint8, SimpleReshapeUint8Test) |