diff options
author | josh minor <josh.minor@arm.com> | 2020-01-06 16:40:46 -0600 |
---|---|---|
committer | Derek Lamberti <derek.lamberti@arm.com> | 2020-01-23 14:29:14 +0000 |
commit | 4a3c61091037e7e86e8b03bb060d8c1ab82731a9 (patch) | |
tree | 928644023400ad5ac0c26b33dfff2f975567d6e8 /src/backends/backendsCommon/test/AbsEndToEndTestImpl.hpp | |
parent | 190a39a4a9598e42b636ae4ab843761884148160 (diff) | |
download | armnn-4a3c61091037e7e86e8b03bb060d8c1ab82731a9.tar.gz |
IVGCVSW-4259 Add frontend and reference workload for UnaryOperationLayer
* Added new layer named ElementwiseUnary
* Deprecated existing Abs/Rsqrt layer functions
* Updated existing Abs/Rsqrt test infrastructure to use new layer
* Added boilerplate for new Exp,Neg,Sqrt elemwise op layers
* AbsQuantize test removed pending future commit
* Serialization support added
!android-nn-driver:2550
Change-Id: Ic595c645925e17b45db568187fd05646daf2e87f
Signed-off-by: josh minor <josh.minor@arm.com>
Diffstat (limited to 'src/backends/backendsCommon/test/AbsEndToEndTestImpl.hpp')
-rw-r--r-- | src/backends/backendsCommon/test/AbsEndToEndTestImpl.hpp | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/src/backends/backendsCommon/test/AbsEndToEndTestImpl.hpp b/src/backends/backendsCommon/test/AbsEndToEndTestImpl.hpp deleted file mode 100644 index 602ccd6a19..0000000000 --- a/src/backends/backendsCommon/test/AbsEndToEndTestImpl.hpp +++ /dev/null @@ -1,65 +0,0 @@ -// -// Copyright © 2017 Arm Ltd. All rights reserved. -// SPDX-License-Identifier: MIT -// - -#pragma once - -#include "CommonTestUtils.hpp" - -#include <QuantizeHelper.hpp> -#include <ResolveType.hpp> - - -namespace -{ - -armnn::INetworkPtr CreateAbsNetwork(const armnn::TensorInfo& tensorInfo) -{ - armnn::INetworkPtr network(armnn::INetwork::Create()); - - armnn::IConnectableLayer* inputLayer = network->AddInputLayer(0, "input"); - armnn::IConnectableLayer* absLayer = network->AddAbsLayer("abs"); - armnn::IConnectableLayer* outputLayer = network->AddOutputLayer(0, "output"); - - Connect(inputLayer, absLayer, tensorInfo, 0, 0); - Connect(absLayer, outputLayer, tensorInfo, 0, 0); - - return network; -} - -} // anonymous namespace - -template<armnn::DataType ArmnnType, typename T = armnn::ResolveType<ArmnnType>> -void AbsEndToEnd(const std::vector<armnn::BackendId>& backends) -{ - using namespace armnn; - - const float qScale = IsQuantizedType<T>() ? 0.25f : 1.0f; - const int32_t qOffset = IsQuantizedType<T>() ? 50 : 0; - - TensorInfo tensorInfo({ 1, 1, 2, 3 }, ArmnnType, qScale, qOffset); - - std::vector<float> inputData = - { - -1.f, 2.f, -3.f, - 4.f, -5.f, 6.f - }; - - std::vector<float> expectedOutputData = - { - 1.f, 2.f, 3.f, - 4.f, 5.f, 6.f - }; - - // quantize data - std::vector<T> qInputData = armnnUtils::QuantizedVector<T>(inputData, qScale, qOffset); - std::vector<T> qExpectedOutputData = armnnUtils::QuantizedVector<T>(expectedOutputData, qScale, qOffset); - - INetworkPtr network = CreateAbsNetwork(tensorInfo); - - EndToEndLayerTestImpl<ArmnnType, ArmnnType>(std::move(network), - { { 0, qInputData } }, - { { 0, qExpectedOutputData } }, - backends); -} |