aboutsummaryrefslogtreecommitdiff
path: root/src/armnn
diff options
context:
space:
mode:
authorCathal Corbett <cathal.corbett@arm.com>2021-12-15 17:12:59 +0000
committerCathal Corbett <cathal.corbett@arm.com>2021-12-23 13:21:22 +0000
commitcbfd718464b8ac41f0338ae6565d8213d24c0a2a (patch)
treef26da835108a0ed52ac0ffc8f7ebec64827b5033 /src/armnn
parent81edc6217f76953c0be4c47f3d005cf48772ccb7 (diff)
downloadarmnn-cbfd718464b8ac41f0338ae6565d8213d24c0a2a.tar.gz
IVGCVSW-6632 OptimizationViews: has INetwork rather than Graph for holding layers
* Deprecate the GetGraph() function in OptimizationViews & remove/fix occurances where OptimizationViews.GetGraph() is called. * OptimizationViews has member INetworkPtr. * OptimizationViews has GetINetwork() method. * Unit test added to OptimizationViewsTests.cpp. Signed-off-by: Cathal Corbett <cathal.corbett@arm.com> Change-Id: Ifc1e53f1c34d786502279631942f0472f401038e
Diffstat (limited to 'src/armnn')
-rw-r--r--src/armnn/Network.cpp20
-rw-r--r--src/armnn/Network.hpp3
-rw-r--r--src/armnn/test/SubgraphViewTests.cpp8
3 files changed, 23 insertions, 8 deletions
diff --git a/src/armnn/Network.cpp b/src/armnn/Network.cpp
index 3198c22d9f..c0cfe426d2 100644
--- a/src/armnn/Network.cpp
+++ b/src/armnn/Network.cpp
@@ -215,10 +215,11 @@ IConnectableLayer* INetwork::AddPooling3dLayer(const Pooling3dDescriptor& poolin
}
IConnectableLayer* INetwork::AddPrecompiledLayer(const PreCompiledDescriptor& preCompiledDescriptor,
- CompiledBlobPtr& compiledBlobPtr,
- const Optional<BackendId>& backend)
+ CompiledBlobPtr& compiledBlobPtr,
+ const Optional<BackendId>& backend,
+ const char* name)
{
- return pNetworkImpl->AddPrecompiledLayer(preCompiledDescriptor, compiledBlobPtr, backend);
+ return pNetworkImpl->AddPrecompiledLayer(preCompiledDescriptor, compiledBlobPtr, backend, name);
}
IConnectableLayer* INetwork::AddActivationLayer(const ActivationDescriptor& activationDescriptor,
@@ -2772,10 +2773,19 @@ IConnectableLayer* NetworkImpl::AddUnidirectionalSequenceLstmLayer(
IConnectableLayer* NetworkImpl::AddPrecompiledLayer(const PreCompiledDescriptor& preCompiledDescriptor,
CompiledBlobPtr& compiledBlobPtr,
- const Optional<BackendId>& backend)
+ const Optional<BackendId>& backend,
+ const char* name)
{
// Method use is for backend users.
- const auto layer = m_Graph->AddLayer<PreCompiledLayer>(preCompiledDescriptor, "pre-compiled");
+ PreCompiledLayer* layer;
+ if (name)
+ {
+ layer = m_Graph->AddLayer<PreCompiledLayer>(preCompiledDescriptor, name);
+ }
+ else
+ {
+ layer = m_Graph->AddLayer<PreCompiledLayer>(preCompiledDescriptor, "pre-compiled");
+ }
// Assign the pre-compiled object to layer
// Pass only one compiled network, Arm NN does not handle multiple
diff --git a/src/armnn/Network.hpp b/src/armnn/Network.hpp
index 3fdc140099..db9c374c3b 100644
--- a/src/armnn/Network.hpp
+++ b/src/armnn/Network.hpp
@@ -172,7 +172,8 @@ public:
IConnectableLayer* AddPrecompiledLayer(const PreCompiledDescriptor& preCompiledDescriptor,
CompiledBlobPtr& compiledBlobPtr,
- const Optional<BackendId>& backend);
+ const Optional<BackendId>& backend,
+ const char* name = nullptr);
IConnectableLayer* AddPreluLayer(const char* name = nullptr);
diff --git a/src/armnn/test/SubgraphViewTests.cpp b/src/armnn/test/SubgraphViewTests.cpp
index a1a57c1b56..639e832b87 100644
--- a/src/armnn/test/SubgraphViewTests.cpp
+++ b/src/armnn/test/SubgraphViewTests.cpp
@@ -200,7 +200,9 @@ TEST_CASE("SingleInputSingleOutputAddPrecompiledLayerSubstituteSubgraph1")
// Construct dummy pre-compiled layer
INetworkPtr network = INetwork::Create();
- IConnectableLayer* preCompiledLayer = network->AddPrecompiledLayer(preCompiledDescriptor, compiledBlobPtr, backend);
+ IConnectableLayer* preCompiledLayer = network->AddPrecompiledLayer(preCompiledDescriptor,
+ compiledBlobPtr,
+ backend);
// Substitute sub-graph with pre-compiled layer
graph.SubstituteSubgraph(*subgraph, preCompiledLayer);
@@ -242,7 +244,9 @@ TEST_CASE("SingleInputSingleOutputAddPrecompiledLayerSubstituteSubgraph2")
// Construct dummy pre-compiled layer
INetworkPtr network = INetwork::Create();
- IConnectableLayer* preCompiledLayer = network->AddPrecompiledLayer(preCompiledDescriptor, compiledBlobPtr, backend);
+ IConnectableLayer* preCompiledLayer = network->AddPrecompiledLayer(preCompiledDescriptor,
+ compiledBlobPtr,
+ backend);
SubgraphView substituteSubgraph(preCompiledLayer);
// Substitute sub-graph with pre-compiled layer