aboutsummaryrefslogtreecommitdiff
path: root/src/backends/tosaCommon/test/OneToManyMappingTests.cpp
diff options
context:
space:
mode:
authorTracy Narine <tracy.narine@arm.com>2023-11-28 11:55:08 +0000
committerTracy Narine <tracy.narine@arm.com>2024-01-17 20:19:09 +0000
commit10403ec9f214d4fec2b85866882a9bc707852412 (patch)
treecf1bef9015d228f9c84cada5386a085781d38f57 /src/backends/tosaCommon/test/OneToManyMappingTests.cpp
parent8ded1788e93886c687c86c1136e34cf0ed7acf47 (diff)
downloadarmnn-10403ec9f214d4fec2b85866882a9bc707852412.tar.gz
IVGCVSW-7344 Add LeakyRelu Activation support to TOSA Reference Backend
* Adding a one to many FP32 tosa mapping for Leaky Relu * Added a few utilities that are needed * Added new tests Signed-off-by: Tracy Narine <tracy.narine@arm.com> Change-Id: If1d7c57a523961581777a244416a7346a9310803
Diffstat (limited to 'src/backends/tosaCommon/test/OneToManyMappingTests.cpp')
-rw-r--r--src/backends/tosaCommon/test/OneToManyMappingTests.cpp54
1 files changed, 51 insertions, 3 deletions
diff --git a/src/backends/tosaCommon/test/OneToManyMappingTests.cpp b/src/backends/tosaCommon/test/OneToManyMappingTests.cpp
index f439b044a4..dde4d79392 100644
--- a/src/backends/tosaCommon/test/OneToManyMappingTests.cpp
+++ b/src/backends/tosaCommon/test/OneToManyMappingTests.cpp
@@ -1,12 +1,12 @@
//
-// Copyright © 2022-2023 Arm Ltd and Contributors. All rights reserved.
+// Copyright © 2022-2024 Arm Ltd and Contributors. All rights reserved.
// SPDX-License-Identifier: MIT
//
#include "AvgPool2DIgnoreValueChecker.hpp"
#include "QuantizeChecker.hpp"
#include "SplitChecker.hpp"
-
+#include <backendsCommon/test/ActivationEndToEndTestImpl.hpp>
#include <armnn/IRuntime.hpp>
using namespace armnn;
@@ -190,4 +190,52 @@ TEST_CASE("GetTosaMappingFromLayer_SplitLayer")
outShape,
descriptor);
}
-} \ No newline at end of file
+
+// Activation
+
+static std::vector<BackendId> tosaDefaultBackends = { "TosaRef" };
+
+TEST_CASE("GetTosaMapping_ActivationFloat32")
+{
+ LeakyReluEndToEndTest<DataType::Float32>(tosaDefaultBackends);
+}
+
+TEST_CASE("GetTosaMapping_ActivationFloat16")
+{
+ try
+ {
+ LeakyReluEndToEndTest<DataType::Float16>(tosaDefaultBackends);
+ }
+ catch (armnn::Exception& e)
+ {
+ CHECK_EQ(std::string(e.what()), "Failed to assign a backend to each layer");
+ }
+}
+
+TEST_CASE("GetTosaMapping_ActivationInt32")
+{
+ LeakyReluEndToEndTest<DataType::Signed32>(tosaDefaultBackends, 0.15f, 0);
+}
+
+TEST_CASE("GetTosaMapping_ActivationInt16")
+{
+ LeakyReluEndToEndTest<DataType::QSymmS16>(tosaDefaultBackends, 0.35f, 0);
+}
+
+TEST_CASE("GetTosaMapping_ActivationInt8")
+{
+ LeakyReluEndToEndTest<DataType::QSymmS8>(tosaDefaultBackends, 0.75f, 0);
+}
+
+TEST_CASE("GetTosaMapping_ActivationUInt8")
+{
+ try
+ {
+ LeakyReluEndToEndTest<DataType::QAsymmU8>(tosaDefaultBackends);
+ }
+ catch (armnn::Exception& e)
+ {
+ CHECK_EQ(std::string(e.what()), "Failed to assign a backend to each layer");
+ }
+}
+}