aboutsummaryrefslogtreecommitdiff
path: root/src/backends/neon/test/NeonEndToEndTests.cpp
diff options
context:
space:
mode:
authorTeresa Charlin <teresa.charlinreyes@arm.com>2024-02-07 20:55:53 +0000
committerTeresa Charlin <teresa.charlinreyes@arm.com>2024-02-08 14:08:11 +0000
commita4b6090eea91d4c11f4319d175b5c6fbf1d2a984 (patch)
treed94769d7b728c664b75b0cbdc2ee59b16c5f0385 /src/backends/neon/test/NeonEndToEndTests.cpp
parentfb1fb168736df22e09ac1748c1cb5a1f96520cb3 (diff)
downloadarmnn-a4b6090eea91d4c11f4319d175b5c6fbf1d2a984.tar.gz
Add and tidy up activation and elementwise binary end to end tests
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I9714c4c57e923ac775dcde2951de07cea35c40ee
Diffstat (limited to 'src/backends/neon/test/NeonEndToEndTests.cpp')
-rw-r--r--src/backends/neon/test/NeonEndToEndTests.cpp82
1 files changed, 60 insertions, 22 deletions
diff --git a/src/backends/neon/test/NeonEndToEndTests.cpp b/src/backends/neon/test/NeonEndToEndTests.cpp
index 1bf9344883..f505b7fd46 100644
--- a/src/backends/neon/test/NeonEndToEndTests.cpp
+++ b/src/backends/neon/test/NeonEndToEndTests.cpp
@@ -161,23 +161,23 @@ TEST_CASE("NeonAdditionEndToEndFloat16Simple3DTest")
ElementwiseBinarySimple3DEndToEnd<armnn::DataType::Float16>(neonDefaultBackends, BinaryOperation::Add);
}
-// Power
-TEST_CASE("NeonPowerEndToEndTestFloat32")
+// Div
+TEST_CASE("NeonDivEndToEndTestFloat32")
{
- ElementwiseBinarySimpleEndToEnd<armnn::DataType::Float32>(neonDefaultBackends, BinaryOperation::Power);
+ ElementwiseBinarySimpleEndToEnd<armnn::DataType::Float32>(neonDefaultBackends, BinaryOperation::Div);
}
-// SqDiff
-TEST_CASE("NeonSquaredDifferenceEndToEndTestFloat32")
+// Mul
+TEST_CASE("NeonMulEndToEndTestFloat32")
{
- ElementwiseBinarySimpleEndToEnd<armnn::DataType::Float32>(neonDefaultBackends, BinaryOperation::SqDiff);
+ ElementwiseBinarySimpleEndToEnd<armnn::DataType::Float32>(neonDefaultBackends, BinaryOperation::Mul);
}
-
-TEST_CASE("NeonSquaredDifferenceEndToEndTestUint8")
+TEST_CASE("NeonMulEndToEndTestUint8")
{
- ElementwiseBinarySimpleEndToEnd<armnn::DataType::QAsymmU8>(neonDefaultBackends, BinaryOperation::SqDiff);
+ ElementwiseBinarySimpleEndToEnd<armnn::DataType::QAsymmU8>(neonDefaultBackends, BinaryOperation::Mul);
}
+// Sub
TEST_CASE("NeonSubtractionEndToEndFloat32Simple3DTest")
{
ElementwiseBinarySimple3DEndToEnd<armnn::DataType::Float32>(neonDefaultBackends, BinaryOperation::Sub);
@@ -187,6 +187,23 @@ TEST_CASE("NeonSubtractionEndToEndFloat16Simple3DTest")
ElementwiseBinarySimple3DEndToEnd<armnn::DataType::Float16>(neonDefaultBackends, BinaryOperation::Sub);
}
+// Power
+TEST_CASE("NeonPowerEndToEndTestFloat32")
+{
+ ElementwiseBinarySimpleEndToEnd<armnn::DataType::Float32>(neonDefaultBackends, BinaryOperation::Power);
+}
+
+// SqDiff
+TEST_CASE("NeonSquaredDifferenceEndToEndTestFloat32")
+{
+ ElementwiseBinarySimpleEndToEnd<armnn::DataType::Float32>(neonDefaultBackends, BinaryOperation::SqDiff);
+}
+
+TEST_CASE("NeonSquaredDifferenceEndToEndTestUint8")
+{
+ ElementwiseBinarySimpleEndToEnd<armnn::DataType::QAsymmU8>(neonDefaultBackends, BinaryOperation::SqDiff);
+}
+
// Batch Mat Mul
TEST_CASE("NeonBatchMatMulEndToEndFloat32Test")
{
@@ -281,37 +298,56 @@ TEST_CASE("DequantizeEndToEndOffsetTest")
DequantizeEndToEndOffset<armnn::DataType::QAsymmU8>(neonDefaultBackends);
}
-TEST_CASE("NeonEluEndToEndTestFloat32")
+// Activations
+// Linear
+TEST_CASE("NeonLinearEndToEndTestFloat32")
{
- EluEndToEndTest<armnn::DataType::Float32>(neonDefaultBackends);
+ ActivationEndToEndTest<armnn::DataType::Float32>(neonDefaultBackends, ActivationFunction::Linear);
}
-TEST_CASE("NeonEluEndToEndTestFloat16")
+// Sigmoid
+TEST_CASE("NeonSigmoidEndToEndTestFloat32")
{
- EluEndToEndTest<armnn::DataType::Float16>(neonDefaultBackends);
+ ActivationEndToEndTest<armnn::DataType::Float32>(neonDefaultBackends, ActivationFunction::Sigmoid);
}
-// HardSwish
-TEST_CASE("NeonHardSwishEndToEndTestFloat32")
+// ReLu
+TEST_CASE("NeonReLuEndToEndTestFloat32")
{
- HardSwishEndToEndTest<armnn::DataType::Float32>(neonDefaultBackends);
+ ActivationEndToEndTest<armnn::DataType::Float32>(neonDefaultBackends, ActivationFunction::ReLu);
}
-TEST_CASE("NeonHardSwishEndToEndTestFloat16")
+// BoundedReLu
+TEST_CASE("NeonBoundedReLuEndToEndTestFloat32")
{
- HardSwishEndToEndTest<armnn::DataType::Float16>(neonDefaultBackends);
+ ActivationEndToEndTest<armnn::DataType::Float32>(neonDefaultBackends, ActivationFunction::BoundedReLu);
}
-TEST_CASE("NeonHardSwishEndToEndTestQAsymmS8")
+// LeakyRelu
+TEST_CASE("NeonLeakyReluActivationFloat32")
+{
+ ActivationEndToEndTest<DataType::Float32>(neonDefaultBackends, ActivationFunction::LeakyReLu, 1.f, 0, 0.01f);
+}
+
+// Elu
+TEST_CASE("NeonEluEndToEndTestFloat32")
+{
+ ActivationEndToEndTest<DataType::Float32>(neonDefaultBackends, ActivationFunction::Elu);
+}
+
+// HardSwish
+TEST_CASE("NeonHardSwishEndToEndTestFloat32")
{
- HardSwishEndToEndTest<armnn::DataType::QAsymmS8>(neonDefaultBackends);
+ ActivationEndToEndTest<DataType::Float32>(neonDefaultBackends, ActivationFunction::HardSwish);
}
-TEST_CASE("NeonHardSwishEndToEndTestQAsymmU8")
+// TanH
+TEST_CASE("NeonTanHEndToEndTestFloat32")
{
- HardSwishEndToEndTest<armnn::DataType::QAsymmU8>(neonDefaultBackends);
+ ActivationEndToEndTest<DataType::Float32>(neonDefaultBackends, ActivationFunction::TanH, 1.f, 0, 2, 3);
}
+// Prelu
TEST_CASE("NeonPreluEndToEndFloat32Test")
{
PreluEndToEndNegativeTest<armnn::DataType::Float32>(neonDefaultBackends);
@@ -322,6 +358,7 @@ TEST_CASE("NeonPreluEndToEndTestUint8Test")
PreluEndToEndPositiveTest<armnn::DataType::QAsymmU8>(neonDefaultBackends);
}
+// SpaceToDepth
TEST_CASE("NeonSpaceToDepthNhwcEndToEndTest1")
{
SpaceToDepthNhwcEndToEndTest1(neonDefaultBackends);
@@ -342,6 +379,7 @@ TEST_CASE("NeonSpaceToDepthNchwEndToEndTest2")
SpaceToDepthNchwEndToEndTest2(neonDefaultBackends);
}
+// Split
TEST_CASE("NeonSplitter1dEndToEndTest")
{
Splitter1dEndToEnd<armnn::DataType::Float32>(neonDefaultBackends);