Age | Commit message (Collapse) | Author |
|
* Added 2 new operators as ElementWiseBinary ops
* Ref End to End and unit tests
* Serialize and Deserialize tests
* Delegate and Opaque Delegate tests
* TfLite Parser tests
Signed-off-by: John Mcloughlin <john.mcloughlin@arm.com>
Change-Id: I537158127f602f0c41ca0402aa31655cd3bd4281
|
|
* Added new ARMNN_STUB_PROFILING and ARMNN_DISABLE_DYNAMIC_BACKEND
defines to replace BUILD_BARE_METAL and BUILD_EXECUTE_NETWORK_STATIC
* Add new CMake variables to disable sample apps and dynamic backends
* Improve BUILD_SHARED_LIBS CMake variable
* Add new archive output location to various libraries so that the
static libraries appear in the same location as the shared libraries
* Fixes for bare metal build
* Add ARMNN_DISABLE_FILE_SYSTEM defines to missing locations
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: I1db9a8f483e7134bd261294b35240cf21b150d45
|
|
* If the output shape is given in Transpose convolution, use it to calculate the padding
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I0bf3dee94c2ce606ed67fb385018b220188c3017
|
|
* Reference workload
* TfLite Delegate
* TfLite Parser
* Serializer and Deserializer
* Changed fallback tests in delegate to use COS instead of CEIL
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I36e0dbff33694182d1dba0c95d463506428e2f04
|
|
* Arm NN does not account for int8 or uint8 not quantized types, Tensorflow does.
Not quantized int8 and uint8 is the same as quantized int8 and uint8 with scale = 1.0 and offset= 0
Default offset/zero_point was already 0, this review sets the default scale to 1.0.
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ibc3eecc281de516c2cc706e17bde01c64ff9556e
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I3ccfc2a4c95c57743927fb276faa756740f5c55a
|
|
!android-nn-driver:9329
* Added ElementwiseBinaryLayer that can represent all ElementwiseBinary
operations including Add, Div, Sub, Maximum, Mul and Minimum.
* Updated Delegate to use ElementwiseBinaryLayer instead of the Add,
Div, Sub, Maximum, Mul and Minimum layers.
* Updated Deserializer to use ElementwiseBinaryLayer instead of the Add,
Div, Sub, Maximum, Mul and Minimum layers.
* Updated OnnxParser to use ElementwiseBinaryLayer instead of the Add
layer.
* Updated TfLiteParser to use ElementwiseBinaryLayer instead of the Add,
Div, Sub, Maximum, Mul and Minimum layers.
* Updated CL and Neon tests to use ElementwiseBinaryLayer.
* Updated CL and Neon Backend Specific Optimizations to accept
ElementBinaryLayers as well as Add, Div, Mul, Sub, Maximum and Minimum
layers.
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I7cbb96b60eb01f0e2b57b0541016d48a08b86c75
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I4f5016841c31b183440f31c1e177bc41d2b8dbb7
|
|
We currently check that output_shape is an input for transpose conv2d.
If that is an input, we assume that it is constant and attempt to copy
the data into the descriptor. When this data is not constant and instead
comes from the output of another layer we segfault. When not constant
we will use infer output shapes.
* Adds a check into ParseTransposeConv2d that inputs[0] is constant
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: I01176ae22974767a2306a3db749a029ed220d88b
|
|
the shape of the network
* Fixed bug where calculated output shape wasn't being recorded in ParseSqueeze.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I8f03a0400323c865e7e8f924d257d6770f809502
|
|
* TFLite Parser:
* Fixed issue in ParseReshape where the targetShape wasn't always calculated correctly
* Fixed issue in ParseFullyConnected where the wrong name was used for the ReshapeLayer
* Added an ExpandDims to the FullyConnected to ensure that we reshape the output correctly
* TFLite Delegate:
* Added an ExpandDims to the FullyConnected to ensure that we reshape the output correctly
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I129dfcb8543f8a3a297c0589c841be20ef3b6407
|
|
* Added ability to calculate dynamic tensors and propagate
them through the model so that when those tensors are later
used as inputs they have the right shapes.
* Added InferOutputShapes to DetectionPostProcessLayer.
* Added InferOutputShapes to MeanLayer.
* Added InferOutputShapes to RankLayer.
* Added InferOutputShapes to ReduceLayer.
* Fixed typos in TfLiteParser.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I880c0716938ef278f5dbf01a8a73a5cc99ce5ded
|
|
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: Id765f6d766e623a157b614ca935113a9f32a5801
|
|
* Build ExecNet lib dependencies as object libs except libarmnn
* Disable PIPE when building static ExecNet
* Remove multiple definition from AsyncExecutionCallback
* Disable DynamicBackend for ExecNet Static build
* Disable inference tests for TfLiteParser and ONNX during static ExecNet
* Remove Tensorflow Parser if condition
* Add Disable thread macro to InferenceModel
* Don't compile dynamic backend symbols in Runtime.cpp for Baremetal and
Exenet Static
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: If41c063eab5f05b3df0a6e064924a36a177f116a
|
|
* Fixed bug when converting Constants with Per-Axis Quantization
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ifbea23e60483746ec987da491dae96e74cb33af4
|
|
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I90d800160b070e25d999b5102a7ce6d3e0ed6a81
|
|
param contains a value of -1.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I538347083e9f22b3f3b6c048aebc2cf5cf4dc786
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I1bc3d50b8fa6e216d8b6b7e3421d2ff37a21712c
|
|
buffer data for Slice operator.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I86735faf8d57168a63ca6657f281ec03b90f7235
|
|
* Added armnnTfLiteParser for BatchMatMul
* Added unit testing for parser
* Updated CMakeLists
Signed-off-by: Samuel Yap <samuel.yap@arm.com>
Change-Id: If6842aaf7cf08f688093b714e2ecea6e8cd87161
|
|
* Adding the check only if it's not a const layer which is needed to run ai_benchmark_v5_yolo_v4_tiny_quant.tflite model
* We still won't be able to run the model due to IVGCVSW-7158
Signed-off-by: Nikhil Raj <nikraj01@e126673.cambridge.arm.com>
Change-Id: Ib7e77a0b5a64be0c92a8e4eae45729f799770b37
|
|
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I5c68b81a67fc2b5a33cf62753351440564bb868e
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I979a6f43c0d6ec49effb9a87339dbcd07678d2bd
|
|
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
Change-Id: I97dee6982e0a7be01c13e9e803c0997547a39ff1
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I1fedfdf2cd8871d6b307fce8620f40adadf75f04
|
|
* Fixed Segfault when parsing Unidirectional Sequence LSTM
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ic69a4190c60ef595be64bc2c356e540319381b7e
|
|
dimensions
* Added allow-expanded-dims to TFLite parser and ArmNN delegate
* If true ArmNN will disregard dimensions with a size of 1 when
validating tensor shapes. Tensor sizes must still match.
* This allows us to support models where tensors have expanded
dimensions (i.e. extra dimensions with a size of 1).
* Fixed bug in Network where it assumed that only the first option
could be ShapeInferenceMethod.
* Fixed bug where m_ShapeInferenceMethod was lost when copying or
moving Graphs.
* Changed Delegate to pass "infer-output-shape", "allow-expanded-dims"
and other BackendOptions through to the Network during construction.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ibe7c5ae6597796fc9164cb07bd372bd7f8f8cacf
|
|
* 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
|
|
!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
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I7ce633a66e2ecb72a9cdd1bff690c4195a9a449f
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I3b1f44c10a3446cfe45a7757d8a98e9788ec5dc0
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I8142072f104b23c6eaf80b54cf6ddfa0393c4921
|
|
* Added Unidirectional Sequence Lstm support to TFLite Parser
* Added support for float operations with int8 weights to TFLite Parser
* Added to Conv2d, Conv3D, DepthwiseConv2D, FullyConnected,
TransposeConv and UnidirectionalSequenceLstm
* Renamed subgraphIndex to subgraph to fix name-shadowing warning.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I818976ab88abc05dcb4bad246fb4108e6e879283
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I9f0acb71c4859116f57266637a35584278937ef9
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I7ab32f2998c2bc25fee8831d4be724286263b4b3
|
|
* Move MemCopyTestImpl.hpp from src/backends/aclCommon/test/ to
include/armnnTestutils.
* Refactor MemCopyTests in aclCommon, cl and Neon.
* Introduce RefMemCopyTests to exercise this utility in x86 builds.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I8824f013d3656658ed0a2904bb79384e3af68641
|
|
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I45fb3f06533b031dd4e65b91561b699555e072b4
|
|
* Added PADV2 support to TFLite Parser
* Added PADV2 unit tests
* Updated Parser Docs
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I06ea9a6ceddc38cdb89204c019432257d3f58e4c
|
|
* ReadStringToBinary was using ARMNN_ASSERT_MSG which is hiding unit
test errors in release builds.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: Ib5d6846525a3a1191f85004c7985773917a1f609
|
|
subgraph #0 error: Operator not supported
* Added missing support for reshape operator in tflite parser when
the target shape is dynamic and batch size is unknown
* Added corresponding unit test
Change-Id: I35e159c9c70440168c6092d2ad02828bb2b81cd9
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
|
|
* Created include/armnnTestUtils directory
* Moved Arm NN test utils files into armnnTestUtils directory
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I03ac54c645c41c52650c4c03b6a58fb1481fef5d
|
|
subgraph #0 error: Operator not supported"
This reverts commit 9fc259682c8b85af58bda42e87703bbec5ae57ce.
Fixes: IVGCVSW-6644 ExecuteNetwork tests failing with invalid input shape in Reshape layer
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I561e0bd9ed1b92491cb8a08635042e199dd661d8
|
|
error: Operator not supported
* Added missing support for reshape operator in tflite parser when the target shape is dynamic and batch size is unknown
* Added corresponding unit test
Change-Id: I78f4b386f2e5e0d08ecacde17e33e304f6afbb70
Signed-off-by: Tamas Nyiri <tamas.nyiri@arm.com>
|
|
* The TfLiteparser was returning non const TensorInfo's for input tensor
BindingPointInfo.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I20942aaef3afe7c91cf19fc3c007bec35828e69e
|
|
!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: Ia1c97adb401c5381341408ec1e4da287ef2d48fe
|
|
* Constant weights and biases are now stored as Constant layers.
* Updated Serializer, Deserializer and unit tests to reflect this.
* Updated TfLiteParser.
* Updated Ref backend to handle constant weights and
bias as inputs rather than reading from member variables.
* Added Conv3d EndToEnd test.
* Added NCDHW DataLayout and unit tests.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I10cdd354ca5f1c748730f92ffdb36bf810f83c8e
|
|
* Add hash define to Conv3d for backwards compatibility when compiling
with TF 2.3.1
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I70eec3b26430240852938af34b065b32bab91ebe
|
|
* Added CONV_3D operator support.
* Fixed TfLiteParser test issue where QAsymmU8 tests were incorrectly
using the Boolean comparison function.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I9db03b54b6de63f918717af80c5ac5310fe26183
|
|
* Removes deprecated AddLayer, IsLayerSupported functions
* Marks the whole LayerVisitor class as deprecated not just the
constructor. This required to wrap all Accept functions in a
no deprecate macro because the LayerVisitor is used as a parameter in
there
* Removes usage of deprecated LayerVisitor and replaces it
with ExecuteStrategy. This required a few structural changes
in the unit tests
* Adds a default implementation for IStrategy called StrategyBase
* Changes pyarmnn to use non deprecated constructor for
INetworkProperties and adds related unit test
* Marks usage of deprecated code in pyarmnn as deprecated. This
required to extend INetworkProperties to allow backwards compatibility
* Removes deprecated functions from CpuAcc, GpuAcc and Ref backends
Note: This patch breaks compatibility with backends that are not
updated in this patch
!android-nn-driver:6325
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Id13b6f37a74d26eadeda2da1dc92915e725ed5a5
|