From 03bf98a8bc51ad20eef4b9ca5fbf6ce15e063721 Mon Sep 17 00:00:00 2001 From: Colm Donelan Date: Mon, 30 May 2022 15:20:36 +0100 Subject: IVGCVSW-6873 Import inputs but don't export outputs fails. Only one bool is used to indicate whether inputs should be imported. However, its possible for the user to want to import inputs but not export outputs. In addition it's possible for a user to enabled import during optimize but then pass a memory source that does not require import. * Add m_ExportEnabled to INetwork.hpp. * Modify Network::dNetwork to consider both m_ImportEnabled and m_ExportEnabled. * Add ValidateSourcesMatchOptimizedNetwork to LoadedNetwork to validate import options between optimize and network load. * Update the TfLite delegate consider exportEnabled flag in the optimizer. !armnn-internal-tests:425350 Signed-off-by: Colm Donelan Change-Id: I776eab81595898e43f91ab40306962eae61329f4 --- python/pyarmnn/src/pyarmnn/swig/modules/armnn_network.i | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'python/pyarmnn/src/pyarmnn/swig/modules/armnn_network.i') diff --git a/python/pyarmnn/src/pyarmnn/swig/modules/armnn_network.i b/python/pyarmnn/src/pyarmnn/swig/modules/armnn_network.i index a2f57a3aa9..55b6795c90 100644 --- a/python/pyarmnn/src/pyarmnn/swig/modules/armnn_network.i +++ b/python/pyarmnn/src/pyarmnn/swig/modules/armnn_network.i @@ -29,7 +29,7 @@ Contains: that can not be reduced will be left in Fp32. m_ReduceFp32ToFp16 (bool): Reduces Fp32 network to Fp16 for faster processing. Layers that can not be reduced will be left in Fp32. - m_ImportEnabled (bool): Enable memory import. + m_ImportEnabled (bool): Enable memory import of inport tensors. m_shapeInferenceMethod: The ShapeInferenceMethod modifies how the output shapes are treated. When ValidateOnly is selected, the output shapes are inferred from the input parameters of the layer and any mismatch is reported. @@ -38,6 +38,7 @@ Contains: with tensors which rank or dimension sizes are not specified explicitly, however this information can be calculated from the inputs. m_ModelOptions: List of backends optimisation options. + m_ExportEnabled (bool): Enable memory export of output tensors. ") OptimizerOptions; @@ -51,7 +52,8 @@ struct OptimizerOptions bool reduceFp32ToBf16 = false, ShapeInferenceMethod shapeInferenceMethod = armnn::ShapeInferenceMethod::ValidateOnly, bool importEnabled = false, - std::vector modelOptions = {}); + std::vector modelOptions = {}, + bool exportEnabled = false); bool m_ReduceFp32ToBf16; bool m_ReduceFp32ToFp16; @@ -59,6 +61,7 @@ struct OptimizerOptions ShapeInferenceMethod m_shapeInferenceMethod; bool m_ImportEnabled; std::vector m_ModelOptions; + bool m_ExportEnabled; }; %model_options_clear; -- cgit v1.2.1