blob: 4afa9bfb241358ec822f37f32c5f4c5e57761d35 [file] [log] [blame]
Aron Virginas-Tarc26ba752018-10-22 13:32:01 +01001//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5#pragma once
6
Aron Virginas-Tarc9cc8042018-11-01 16:15:57 +00007
8#include <Runtime.hpp>
Aron Virginas-Tarc26ba752018-10-22 13:32:01 +01009
10namespace
11{
12
Kevin Mayd92a6e42021-02-04 10:27:41 +000013inline void CreateAndDropDummyNetwork(const std::vector<armnn::BackendId>& backends, armnn::RuntimeImpl& runtime)
Aron Virginas-Tarc26ba752018-10-22 13:32:01 +010014{
15 armnn::NetworkId networkIdentifier;
16 {
17 armnn::TensorInfo inputTensorInfo(armnn::TensorShape({ 7, 7 }), armnn::DataType::Float32);
18 armnn::TensorInfo outputTensorInfo(armnn::TensorShape({ 7, 7 }), armnn::DataType::Float32);
19
20 armnn::INetworkPtr network(armnn::INetwork::Create());
21
22 armnn::IConnectableLayer* input = network->AddInputLayer(0, "input");
23 armnn::IConnectableLayer* layer = network->AddActivationLayer(armnn::ActivationDescriptor(), "test");
24 armnn::IConnectableLayer* output = network->AddOutputLayer(0, "output");
25
26 input->GetOutputSlot(0).Connect(layer->GetInputSlot(0));
27 layer->GetOutputSlot(0).Connect(output->GetInputSlot(0));
28
29 // Sets the tensors in the network.
30 input->GetOutputSlot(0).SetTensorInfo(inputTensorInfo);
31 layer->GetOutputSlot(0).SetTensorInfo(outputTensorInfo);
32
33 // optimize the network
34 armnn::IOptimizedNetworkPtr optNet = Optimize(*network, backends, runtime.GetDeviceSpec());
35
36 runtime.LoadNetwork(networkIdentifier, std::move(optNet));
37 }
38
39 runtime.UnloadNetwork(networkIdentifier);
40}
41
42} // anonymous namespace