1*89c4ff92SAndroid Build Coastguard Worker //
2*89c4ff92SAndroid Build Coastguard Worker // Copyright © 2017 Arm Ltd. All rights reserved.
3*89c4ff92SAndroid Build Coastguard Worker // SPDX-License-Identifier: MIT
4*89c4ff92SAndroid Build Coastguard Worker //
5*89c4ff92SAndroid Build Coastguard Worker #pragma once
6*89c4ff92SAndroid Build Coastguard Worker
7*89c4ff92SAndroid Build Coastguard Worker
8*89c4ff92SAndroid Build Coastguard Worker #include <Runtime.hpp>
9*89c4ff92SAndroid Build Coastguard Worker
10*89c4ff92SAndroid Build Coastguard Worker namespace
11*89c4ff92SAndroid Build Coastguard Worker {
12*89c4ff92SAndroid Build Coastguard Worker
CreateAndDropDummyNetwork(const std::vector<armnn::BackendId> & backends,armnn::RuntimeImpl & runtime)13*89c4ff92SAndroid Build Coastguard Worker inline void CreateAndDropDummyNetwork(const std::vector<armnn::BackendId>& backends, armnn::RuntimeImpl& runtime)
14*89c4ff92SAndroid Build Coastguard Worker {
15*89c4ff92SAndroid Build Coastguard Worker armnn::NetworkId networkIdentifier;
16*89c4ff92SAndroid Build Coastguard Worker {
17*89c4ff92SAndroid Build Coastguard Worker armnn::TensorInfo inputTensorInfo(armnn::TensorShape({ 7, 7 }), armnn::DataType::Float32);
18*89c4ff92SAndroid Build Coastguard Worker armnn::TensorInfo outputTensorInfo(armnn::TensorShape({ 7, 7 }), armnn::DataType::Float32);
19*89c4ff92SAndroid Build Coastguard Worker
20*89c4ff92SAndroid Build Coastguard Worker armnn::INetworkPtr network(armnn::INetwork::Create());
21*89c4ff92SAndroid Build Coastguard Worker
22*89c4ff92SAndroid Build Coastguard Worker armnn::IConnectableLayer* input = network->AddInputLayer(0, "input");
23*89c4ff92SAndroid Build Coastguard Worker armnn::IConnectableLayer* layer = network->AddActivationLayer(armnn::ActivationDescriptor(), "test");
24*89c4ff92SAndroid Build Coastguard Worker armnn::IConnectableLayer* output = network->AddOutputLayer(0, "output");
25*89c4ff92SAndroid Build Coastguard Worker
26*89c4ff92SAndroid Build Coastguard Worker input->GetOutputSlot(0).Connect(layer->GetInputSlot(0));
27*89c4ff92SAndroid Build Coastguard Worker layer->GetOutputSlot(0).Connect(output->GetInputSlot(0));
28*89c4ff92SAndroid Build Coastguard Worker
29*89c4ff92SAndroid Build Coastguard Worker // Sets the tensors in the network.
30*89c4ff92SAndroid Build Coastguard Worker input->GetOutputSlot(0).SetTensorInfo(inputTensorInfo);
31*89c4ff92SAndroid Build Coastguard Worker layer->GetOutputSlot(0).SetTensorInfo(outputTensorInfo);
32*89c4ff92SAndroid Build Coastguard Worker
33*89c4ff92SAndroid Build Coastguard Worker // optimize the network
34*89c4ff92SAndroid Build Coastguard Worker armnn::IOptimizedNetworkPtr optNet = Optimize(*network, backends, runtime.GetDeviceSpec());
35*89c4ff92SAndroid Build Coastguard Worker
36*89c4ff92SAndroid Build Coastguard Worker runtime.LoadNetwork(networkIdentifier, std::move(optNet));
37*89c4ff92SAndroid Build Coastguard Worker }
38*89c4ff92SAndroid Build Coastguard Worker
39*89c4ff92SAndroid Build Coastguard Worker runtime.UnloadNetwork(networkIdentifier);
40*89c4ff92SAndroid Build Coastguard Worker }
41*89c4ff92SAndroid Build Coastguard Worker
42*89c4ff92SAndroid Build Coastguard Worker } // anonymous namespace
43