aboutsummaryrefslogtreecommitdiff
path: root/1.2/ArmnnDriverImpl.cpp
diff options
context:
space:
mode:
authorSadik Armagan <sadik.armagan@arm.com>2021-01-13 15:56:51 +0000
committerSadik Armagan <sadik.armagan@arm.com>2021-01-13 15:56:51 +0000
commitb3021435ad91e494af01ca0778915877dc0780c0 (patch)
tree176bff8eafd8f6a2679d3569cbd640400b10a9ef /1.2/ArmnnDriverImpl.cpp
parentf36e10b8947fe5f0984e7428c2d5d5d7fe18007e (diff)
downloadandroid-nn-driver-b3021435ad91e494af01ca0778915877dc0780c0.tar.gz
IVGCVSW-4417 'Serialise ArmNN Model on android-nn-driver'
* Implemented serialization of the network on android-nn-driver !armnn:4850 Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I3caf07bd4d1d2a3068c58f0b344303c4cf977ca6
Diffstat (limited to '1.2/ArmnnDriverImpl.cpp')
-rw-r--r--1.2/ArmnnDriverImpl.cpp16
1 files changed, 11 insertions, 5 deletions
diff --git a/1.2/ArmnnDriverImpl.cpp b/1.2/ArmnnDriverImpl.cpp
index d5539bc6..2ef51db8 100644
--- a/1.2/ArmnnDriverImpl.cpp
+++ b/1.2/ArmnnDriverImpl.cpp
@@ -125,6 +125,11 @@ Return<V1_0::ErrorStatus> ArmnnDriverImpl::prepareArmnnModel_1_2(
return V1_0::ErrorStatus::NONE;
}
+ // Serialize the network graph to a .armnn file if an output directory
+ // has been specified in the drivers' arguments.
+ auto serializedNetworkFileName =
+ SerializeNetwork(*modelConverter.GetINetwork(), options.GetRequestInputsAndOutputsDumpDir());
+
// Optimize the network
armnn::IOptimizedNetworkPtr optNet(nullptr, nullptr);
armnn::OptimizerOptions OptOptions;
@@ -195,11 +200,12 @@ Return<V1_0::ErrorStatus> ArmnnDriverImpl::prepareArmnnModel_1_2(
return V1_0::ErrorStatus::NONE;
}
- // Now that we have a networkId for the graph rename the dump file to use it
- // so that we can associate the graph file and the input/output tensor dump files
- RenameGraphDotFile(dotGraphFileName,
- options.GetRequestInputsAndOutputsDumpDir(),
- netId);
+ // Now that we have a networkId for the graph rename the exported files to use it
+ // so that we can associate the graph file and the input/output tensor exported files
+ RenameExportedFiles(serializedNetworkFileName,
+ dotGraphFileName,
+ options.GetRequestInputsAndOutputsDumpDir(),
+ netId);
std::unique_ptr<ArmnnPreparedModel_1_2<hal_1_2::HalPolicy>> preparedModel(
new ArmnnPreparedModel_1_2<hal_1_2::HalPolicy>(