diff options
Diffstat (limited to 'src/armnn')
-rw-r--r-- | src/armnn/Network.cpp | 20 | ||||
-rw-r--r-- | src/armnn/Network.hpp | 3 | ||||
-rw-r--r-- | src/armnn/test/SubgraphViewTests.cpp | 8 |
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 |