diff options
author | Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> | 2018-10-22 13:32:01 +0100 |
---|---|---|
committer | Matthew Bentham <matthew.bentham@arm.com> | 2018-10-22 16:57:54 +0100 |
commit | c26ba759fe67bd14829a84b5abac80f51ca61946 (patch) | |
tree | 0f5696428a899d7734b4264cec6395a8b1fce126 /src/backends/test/RuntimeTestImpl.hpp | |
parent | 5610661023a4170e677027570db18a379842dac3 (diff) | |
download | armnn-c26ba759fe67bd14829a84b5abac80f51ca61946.tar.gz |
IVGCVSW-2060: Separate and move backend specific unit tests from the src/armnn/test folder to the backends
* Moved backend-specific memory leak checking tests from RuntimeTests.cpp to
the corresponding backend test folder
Change-Id: I0a7f4ef52c5350c3cebca23b2b4e61a9446ca11f
Diffstat (limited to 'src/backends/test/RuntimeTestImpl.hpp')
-rw-r--r-- | src/backends/test/RuntimeTestImpl.hpp | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/src/backends/test/RuntimeTestImpl.hpp b/src/backends/test/RuntimeTestImpl.hpp new file mode 100644 index 0000000000..671f94b0bb --- /dev/null +++ b/src/backends/test/RuntimeTestImpl.hpp @@ -0,0 +1,42 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// SPDX-License-Identifier: MIT +// +#pragma once + +#include <armnn/ArmNN.hpp> +#include <armnn/Runtime.hpp> + +namespace +{ + +inline void CreateAndDropDummyNetwork(const std::vector<armnn::BackendId>& backends, armnn::Runtime& runtime) +{ + armnn::NetworkId networkIdentifier; + { + armnn::TensorInfo inputTensorInfo(armnn::TensorShape({ 7, 7 }), armnn::DataType::Float32); + armnn::TensorInfo outputTensorInfo(armnn::TensorShape({ 7, 7 }), armnn::DataType::Float32); + + armnn::INetworkPtr network(armnn::INetwork::Create()); + + armnn::IConnectableLayer* input = network->AddInputLayer(0, "input"); + armnn::IConnectableLayer* layer = network->AddActivationLayer(armnn::ActivationDescriptor(), "test"); + armnn::IConnectableLayer* output = network->AddOutputLayer(0, "output"); + + input->GetOutputSlot(0).Connect(layer->GetInputSlot(0)); + layer->GetOutputSlot(0).Connect(output->GetInputSlot(0)); + + // Sets the tensors in the network. + input->GetOutputSlot(0).SetTensorInfo(inputTensorInfo); + layer->GetOutputSlot(0).SetTensorInfo(outputTensorInfo); + + // optimize the network + armnn::IOptimizedNetworkPtr optNet = Optimize(*network, backends, runtime.GetDeviceSpec()); + + runtime.LoadNetwork(networkIdentifier, std::move(optNet)); + } + + runtime.UnloadNetwork(networkIdentifier); +} + +} // anonymous namespace |