Age | Commit message (Collapse) | Author |
|
* Update Front-end and Tools.
* Updated Serializer, Deserializer and unit tests to reflect this.
* Updated TfLiteDelegate, TfLiteParser and OnnxParser.
* Updated Ref.
* Fixed resulting Neon / CL tests
* Unified optimizers for conv2d ops
* Optimizer Fix - Fp32ToBf16
* Partial implementation for ACL backends to fix VTS failures
!android-nn-driver:7477
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I5fb18877f7ee32643e15a9818945356274bb401b
|
|
* It's possible that a model may have an input entry for bias tensors
but that the index for those is -1. If it's -1 then it's not present.
* Fixed logic error in IsOptionalOperandPresent: it returned false if
it was present and true if it was missing.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I45ad8d8552122493c529b1a35a5689416ccfbb71
|
|
!android-nn-driver:7418
* Update Front-end and Tools.
* Updated Serializer, Deserializer and unit tests to reflect this.
* Updated TfLiteDelegate, TfLiteParser and OnnxParser.
* Change NNDriver to new API.
* Updated Ref.
* Neon and Cl backend partially completed (Backend.cpp files).
* Added dynamic or constant input EndToEnd tests.
* Added ConstantTensorAsInputMemeberVariableRedirect Optimization.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: Ib18b6c10a093042e165e25237dc04a4c67ba82da
|
|
* Changing the test in the delegate to match one of the unit tests
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I553ca266116ba8ee173fc951ab1ffd2b6eed1428
|
|
* Corrected TensorInfo order for IsUnidirectionalSequenceLstmSupported
* outputStateOut TensorInfo is not optional.
* cellStateOut TensorInfo is not optional.
* TensorInfo Order matches other QLSTM/LSTM layers.
* Added missing parameters to UnidirectionalSequenceLstmOperator for
delegate.
* Added quantized UnidirectionalSequenceLstm support to Neon
!android-nn-driver:7457
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I26dde1bb96793dd25eb9081ca5ae5f63752288c4
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I56418875b3bb2ae45b5c69bfeaafa1a6126b8085
|
|
* Updated ABI version to 29 due to being the first ABI break in 22.05
!android-nn-driver:7226
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I9c50007dcd5b5e792757e7bd1213606df5ffec36
|
|
Change-Id: I30a46f3368bbbf33019eac4fa1245f6ff69deacd
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
* Improved error reporting on armnn_delegate
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I1bd131fb56d64b32b1fafad0465256178720226c
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I01f42a520d15c6dabd2f77c7715c91b8f7026476
|
|
Change-Id: Id55a460ecb510f5b30235b03f54390f2c8188fc2
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Delegate'
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I40ab6aff4bc076eafcef08c1c20aacdbd52da853
|
|
* Added constant input supports for Pack/Stack, Concatenation operators
* Added Int32 support to Pack/Stack operator on CpuRef
* Removed unsupported operator from TfLite Delegate
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I64203e174300d23eedeb22bddefe07e931c4eff3
|
|
* Adds ExecuteNetwork when building the delegate only
* Adds timings to delegate subgraph creation
* Adds executions times
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Ieff2f67ea8dbb6c2a708f8810e84a20485b7a631
|
|
!android-nn-driver:6532
!armnn-internal-tests:372451
* Made fix to 2 out of 3 ConstTensor() constructors in Tensor.hpp to
throw InvalidArgumentException when TensorInfo isConstant parameter
is false.
* Added new ConstTensor() constructor in Tensor.cpp to accept vector<>.data()
using template<typename MemoryType>.
* Fixed runtime->GetOutputTensorInfo()/GetInputTensorInfo() methods and
called submethods to return TensorInfo& rather than TensorInfo.
* Fixed all failing unit tests for CpuRef/CpuAcc/GpuAcc to ensure any
ConstTensor created has it's TensorInfo isConstant set to true.
* Added unit tests in TensorTest.cpp to ensure ConstTensor constructors
throw InvalidArgumentException when TensorInfo isConstat parameter is
false.
* Added unit test to ensure an empty ConstTensor constructor will set
TensorInfo isConatant to true.
* Indentation fixes.
* Fix to arm_tensor.i to add isConstant parameter to TensorInfo
constructor. Added methods IsConstant() and SetConstant().
* Fix to const_tensor.py to throw ValueError when TensorInfo
isConstant is set to false when constructing a ConstTensor.
* Fixed PyArmnn unit tests to set TensorInfo isConstant to
True when ConstTensor is used.
* Added unit tests in test_const_tensor.py to ensure ConstTensor
constructors throw ValueError when TensorInfo isConstat parameter
is false.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I44e440dd0422c366d31bbdbc77ad2b4db0bde148
|
|
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I3e91796a69f02a8eff3018a1d17a496a66076db5
|
|
* Moves the creation of a DelegateOption object from
armnn_external_delegate to DelegateOptions.
* This allows this code to be reused elsewhere
* Allow boolean values of DelegateOptions to be passed as
strings e.g. 'true' or 'false'
* Add unit tests
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I0ada17f511027dd3f47a85142cae346464682f5a
|
|
Change-Id: Ia4bf42b1f3f86b947825dff8e538d2d4343effab
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
* Fixed the mechanism in armnn_delegate.cpp which creates the runtime
options by moving it to DelegateOptions. BackendOptions are used in
the runtime options as well as in the optimizer options but need
to be processed separately.
* Added runtime options to DelegateOptions to make it easier to differ
between backend options of the runtime and the optimization
* Updated armnn_external_delegate to use runtime options
* Added explanations to OptimizerOptions
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I34235474147def261821e4576dd41a83ad492258
|
|
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ia1c97adb401c5381341408ec1e4da287ef2d48fe
|
|
* Pass through the value of m_EnableProfiling from Executenetwork to
DelegateOptions.
* If internal profiling is enabled print it out from inside the delegate.
* Remove an unnecessary ProfilerImpl instance from WorkingMemhandle.hpp
* Remove an unnecessary parameter from TfLiteDelegateMainImpl in
ExecuteNetwork.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: Ia1d4b1eb3a05ca5b4d80cc39e138c7fac182d948
|
|
* Conv3d is only correctly supported for external delegates
from TF v2.6, as there was a breaking bug in v2.5.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ib7941307f4c7b0d3dbb7deaa5a90aceb63c1162f
|
|
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
Change-Id: Ic21e9e8ca1e3e7373db060e701c015623af29f14
|
|
* Adding Runtime parameter: dynamic-backends-path
* Add profiling parameters:
gpu-enable-profiling,
enable-internal-profiling, internal-profiling-detail,
enable-external-profiling, timeline-profiling, outgoing-capture-file,
incoming-capture-file, file-only-external-profiling,
counter-capture-period, profiling-file-format
* Adding utility parameter "serialize-to-dot"
Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: Ibff4b9a85ff0f0da5d70e8aa0bb6cba96aaabbc3
|
|
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I825f09d008505e701d42b79be936f4da24620c06
|
|
* Tflite parser
* Tflite delegate
* Serializer
* Deserializer
* Ref, CpuAcc and GpuAcc workloads
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I601a9ee1680b372c7955d9a628857d08c3cfd377
|
|
to Ref backend and armnn delegate
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I203d0029c12221228ffe229acda3c90594394e9b
|
|
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: Ib04f8d6b9e60a4204c56eba4c2ecd2b316509dcc
|
|
* Constant weights and biases are now stored as Constant layers.
* Updated Serializer, Deserializer and unit tests to reflect this.
* Updated TfLiteDelegate, TfLiteParser and OnnxParser.
* Updated Schema with IsConstant and ConstantTensorsAsInputs.
* Updated Ref backend to handle constant weights and
bias as inputs rather than reading from member variables.
* Added dynamic or constant input EndToEnd tests.
!android-nn-driver:5959
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ibf3cf437df1100e4b322b0d303c575c6339f9696
|
|
* Add TfLiteParser and delegate support
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: Id3219ba7cc7128b5e73de2c7d8d076a40dcce9c5
|
|
* This change is necessary because tflite uses a [1,H,W,I*M] format
and uses the I*M dimension for per axis quantization. Our previous
layout [M,I,H,W] can't handle the correlating quantization scales.
* Updates Onnx-, TfLiteParser and TfliteDelegate
* Updates the CpuRef, CpuAcc and GpuAcc backends
* Adjusts unit tests
* Adds test to ensure models with old layout can still be read and
executed
* Adds conversion function to previous layout [1,H,W,I*M] --> [M,I,H,W]
which can be used by backend developers
!android-nn-driver:5553
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Ifef23368b8c3702cf315a5838d214f7dc13c0152
|
|
profiling common
!android-nn-driver:5691
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: Ib71af0831e324ac6bd27b1a36f4a6ec1a703b14a
|
|
* Alpha is supported both as a constant and as an
input tensor.
Signed-off-by: James Conroy <james.conroy@arm.com>
Change-Id: I20f30d479b87dc5fbcf75a1ce5305d70ae9b0646
|
|
* Determine Splitter outputs to correctly perform validation
* Add validation for a Reshape Layer
* Add back the Num6 Axis2 test to CpuAcc and GpuAcc
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I1e8108ce50d81420057d7a8b098a07eda63c5c8d
|
|
* Remove unsupported Delegate Unit Tests for CAST and UNPACK
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I03e460a77ee54e63e024d58e8f032246eaa9bac3
|
|
Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: I23731718236043b46c143eaf416cb375edd93983
|
|
* Set the correct index for connecting constant layers.
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I86a626b82943e0d04b8ecb6b4f0f1b750b22d161
|
|
* Added support for PACK which is equivalent to Arm NN STACK
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I9ea134d0310eeea1caba30a8b9221712e9487c75
|
|
* Refactored the code for checking constant inputs.
* Added a unit test for ADD operator with constant input.
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Ie7207e5a1ce77ea305552859de32a66e07c68a6f
|
|
* with Conv2D for tflite parser and delegate
* with TransposeConv for tflite parser
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I8d1ed1f3388c6eace436d0e6fd5869451c6e7830
|
|
TensorHandleFactoryRegistry::GetFactory
* Modify Layer::CreateTensorHandles to include MemorySource
* Modify INetworkProperties to add MemorySource
* Disable Neon/Cl fallback tests until full import implementation complete
Change-Id: Ia4fff6ea3d4bf6afca33aae358125ccaec7f9a38
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
|
|
* Added enable-fast-math and number-of-threads options.
* Added save-cached-network and cached-network-filepath options.
* Added external_delegate python tests for new options.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I7cf6522a6f895cd71ed8f369d94a5113d78594f9
|
|
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I6da711950b8e7d3c0d5cbd443e91eb36700ac4c8
|
|
* Removed check in TfLiteParser and Delegate that requires both weights
and biases to be constant or non-constant simultaneously
* Updated TfLiteParser FullyConnected layer test to properly use
non-constant weights
* MobileBERT Float32 model now runs on TfLiteParser
Signed-off-by: mathad01 <matthew.haddon@arm.com>
Change-Id: I1d75eea466caa90cd695ad353160362df2f69483
|
|
* Reading tensor infos won't allow a permutation vector anymore.
The permutation only changed the quantization dimension not the
shape and was therefore misleading
* The permutation of the full tensor info is now performed in
armnnUtils::Permuted
* Changed TfLite Parser depthwise parsing function
* Added unit tests to TfLite Parser with more random data
* Changed TfLite Delegate depthwise parsing function
* Added unit test to the delegate with per channel quantization
!android-nn-driver:5412
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I1f985ee69547bcaf16a72201e00a6b6fe1ef9a97
|
|
* Updated Split function to read correct axis data.
* Improved validation in Split and SplitV function.
* Moved ComputeWrappedIndex function to DelegateUtils.hpp.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I8c7d0c9b747d1ab548df98da930d838c2f57659e
|
|
* Added support for Signed64 to flatbuffer's schema & updated source tree
* Added support for Signed64 to TFLite Delegate
* Added support for Signed64 to Serializer
* Added support for Signed64 to Deserializer
* Added unit test for ArgMinMax to Deserializer
* Deprecated m_Output_Type from the ArgMinMaxDescriptor: the output type
is solely determined by the DataType of the output Tensor
* Fixed issue where RefArgMinMaxWorkload could output data using
the wrong DataType
* Added Signed64 to RefLayerSupport::IsArgMinMaxSupported as a supported
type
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ib622c052a1f8aa3e658262f8bde5a6881a8cbe10
|
|
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I2873f8563cc11da550d460b04e5175372489a564
|
|
TfLiteDelegate support for FullyConnected Operator'
* Added front-end support for non-const weights for FULLY_CONNECTED operator
* Added FULLY_CONNECTED end-to-end test
* Updated FULLY_CONNECTED operator support in TfLite Arm NN Delegate for non-const weights
* Updated the version numbers
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Iffa5b9aa9297aca4c02d923cce4636c88ac21faa
|
|
Signed-off-by: David Monahan <david.monahan@arm.com>
Change-Id: I127e6923f257bb4094485aa1716ead1067cf8d34
|