Age | Commit message (Collapse) | Author |
|
* 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: I4f5016841c31b183440f31c1e177bc41d2b8dbb7
|
|
* 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
|
|
* 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
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I1bc3d50b8fa6e216d8b6b7e3421d2ff37a21712c
|
|
* Added armnnTfLiteParser for BatchMatMul
* Added unit testing for parser
* Updated CMakeLists
Signed-off-by: Samuel Yap <samuel.yap@arm.com>
Change-Id: If6842aaf7cf08f688093b714e2ecea6e8cd87161
|
|
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: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I1fedfdf2cd8871d6b307fce8620f40adadf75f04
|
|
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: 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>
|
|
!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
|
|
* 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
|
|
* Added support for size of -1
A size of -1 is treated as size = dimension - begin
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I4e381a3794852ec45be029028e2d29bc87791635
|
|
* Tflite parser
* Tflite delegate
* Serializer
* Deserializer
* Ref, CpuAcc and GpuAcc workloads
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I601a9ee1680b372c7955d9a628857d08c3cfd377
|
|
* Added support for LRN to TfLiteParser
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ia34441a4adeecd1f17c65af047d6c207729703ec
|
|
* tflite shape_signatures will now be the preferred way to detect dynamic tensors
* add test utility to the parser that converts a model's tensors to dynamic
* by default tests will run a dynamic version of the model in addition to the original
* fix dynamic shape inference of unpack operator
* reactivate and fix quantize test
* add shape inference to expand dims
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: If11ba19d813cd3590707583dff1e4eb0e6412a1d
|
|
!android-nn-driver:5966
Change-Id: Ice0b4d2872bb0e09bfc0763034a206c3a8f24af4
Signed-off-by: Rob Hughes <robert.hughes@arm.com>
|
|
Tests for TfLiteParser are not working
when the expected outputs have boolean type
Signed-off-by: Bruno Goncalves <bruno.slackware@gmail.com>
Change-Id: I16890f82e8e581f53e6e8464668c5adf3374bf2f
|
|
E.g. Equal, NotEqual, Greater, GreaterOrEqual, Less and LessOrEqual
Signed-off-by: Bruno Goncalves <bruno.slackware@gmail.com>
Change-Id: Id56ef3cc19cc5c5daa19354010c9f25766e5fd00
|
|
* Fix type of literals
* Add explicit casts
* #include missing headers
* Replace use of non-standard u_int8_t
* Remove name of unused variables
* Fix DLL export macro - this was broken when some of the exporting headers
were moved to a different library.
Change-Id: Ie569c8df41a077b46c608798f39526352e2aeb3a
Signed-off-by: Rob Hughes <robert.hughes@arm.com>
|
|
* Add ExpandDims tests in tfliteparser
* Add support for negative axis to squeeze
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Signed-off-by: Finn Williams <Finn.Williams@arm.com>
Change-Id: I604c9b4ac6514895e9e3d4d85c2937e797d288e0
|
|
* 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
|
|
* Used doctest in ArmNN unit tests
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Ia9cf5fc72775878885c5f864abf2c56b3a935f1a
|
|
* Replaced all instances of boost::multi_array with flat vectors.
* Updated LayerTestResult struct with new member variables.
* Updated CompareTensor function to compare flat vectors and the shape.
* Removed MakeTensor function from TensorHelpers.hpp.
* Removed GetTensorShapeAsArray function from LayerTestResult.hpp.
* Removed boost::array usage.
* Removed boost::extents usages.
* Removed boost::random usages.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: Iccde9d6640b534940292ff048fb80c00b38c4743
|
|
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I29793ece7b6bfc015c643be3ed16529ab50f0d7d
|
|
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I982ecd66ea3ed4d88934cd8254832eecb4a7adb4
|
|
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Change-Id: I3dedcc86efe1a67c709d9da636953e2fc400107b
|
|
* Adding a basic PredicateResult class to replace
boost::test_tools::predicate_result
* Replacing all uses of boost::test_tools::predicate_result with
the new armnn::PredicateResult class
* Replacing use of boost::test_tools::output_test_stream output
with std::ostringstream in ProfilerTests.cpp
Signed-off-by: Colm Donelan <Colm.Donelan@arm.com>
Change-Id: I75cdbbff98d984e26e4a50c125386b2988516fad
|
|
* with Conv2D for tflite parser and delegate
* with TransposeConv for tflite parser
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: I8d1ed1f3388c6eace436d0e6fd5869451c6e7830
|
|
* 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 ParseSplit TfLiteParser function to read correct axis data.
* Improved validation in ParseSplit and ParseSplitV function.
* Added TensorFlow BOOL support to TfLiteParser.
* Added supported ElementWiseUnary operators to TfLiteParser
E.g. ABS, LOGICAL_NOT and RSQRT.
* Removed ParseExp and ParseNeg function implementation in favour
of reusable ParseElementWiseUnary function.
* Removed Exp.cpp and Neg.cpp files and moved tests to ElementWiseUnary.cpp.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ibce36e3ce4d95755dda88abc2ddde1e07e62c5e2
|