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: Colm Donelan <colm.donelan@arm.com>
Change-Id: I9ded47fece6f19a302a0d017f6561c32b9c54daa
|
|
* Changed build so that electing to build the unit tests also builds
ExecuteNetwork and the other test applications.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I76cb6552a4f6dcee173de3dd05d43207e699a751
|
|
Signed-off-by: John Mcloughlin <john.mcloughlin@arm.com>
Change-Id: I6ce034d71f83765a9db65ab8f95e0b391dd8a9e4
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: If764a8fac1a2aac0ef3b2418b56f4f87d61fd9d8
|
|
* Adds VisitCast function to Redefine.hpp
* Enables Cast Test for OpaqueUnitTests
* Various Fixes to the opaque delegate to allow operator to run
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: I43d42eea5c987d6aed8a0f909a6bf583fddcc94e
|
|
Signed-off-by: John Mcloughlin <john.mcloughlin@arm.com>
Change-Id: Id4bdc31e3e6f18ccaef232c29a2d2825c915b21c
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I902c9187eefe7595271312fdc16273f7aa3d41cd
|
|
* Added opaque delegate DelegateTestInterpreter implementation
* Moved classic specific tests to ArmnnClassicDelegateTest.cpp
* Moved opaque specific tests to ArmnnOpaqueDelegateTest.cpp
* Removed ArmnnDelegateTest.cpp
* Moved TfLiteStableDelegate implementation to armnn_delegate.cpp
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ifc92b6fb38dc370f3fb88a4daca56d457e74bc2e
|
|
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I5d2fe903bab128e4fc84a8239ba5621f79572fe8
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I2a71d1d1024deccbcfdba44c2d77c7bb721b1ab4
|
|
* ABI break on the delegate interface. Bumping the version number.
Signed-off-by: John Mcloughlin <john.mcloughlin@arm.com>
Change-Id: I6ef3bc1ea240ef08b67bb3cb9d363a5bbbbdd906
|
|
* Added ArmnnOpaqueDelegate::IdentifyOperatorsToDelegate implementation.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I0b65847358d339a15fc3f729f89deb9b86da0c66
|
|
* Updated all tests to use new DelegateTestInterpreter.
* Fixed some unit tests where the shape was incorrect.
* Add file identifier to FlatBuffersBuilder, as it is required for
validation when creating the model using new API.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I1c4f5464367b35d4528571fa94d14bfaef18fb4d
|
|
* Implement Armnn Subgraph methods in opaque armnn_delegate.cpp
* Temporarily remove opaque delegate from DelegateUnitTests
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: I43557eb0b96a22c896890593a3ed9ca9744994bb
|
|
* Added required includes if ARMNN_LEAK_CHECKING_ENABLED.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I18bde66e8a1e19690747d7e05d10dbe0cedb1c1b
|
|
* Added ARMNN_NO_DEPRECATE_WARN_ to test files for Tosa and DynamicSample.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I2f1b771d719cf637e17cc423cd2211db9643a6e8
|
|
* Resolves MLCE-1040
Change-Id: I32878ed70af356832403e83dcb63b0b89a8a84e3
Signed-off-by: Pablo Marquez Tello <pablo.tello@arm.com>
|
|
The initial model load and tensor allocation operations against the
TfLiteInterpreter were not checking return codes resulting in
segmentation faults.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I812785f0af9012c97570065d200f72eaf781165a
|
|
* Fixed broken steps in BuildGuideAndroidNDK.md
* Fixed broken links in BuildGuideAndroidNDK.md
* Removed unneeded steps from BuildGuideAndroidNDK.md
* Added instructions for building the tflite parser and delegate for
android
* Fixed errors in CMakeLists.txt that made it impossible to build without
Neon or Ref.
* Added build_android_ndk_guide.sh, a shell script that contains the same
steps as BuildGuideAndroidNDK.md
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Ie0479d3a2e4a776e7de88017b222d35a48c1fe10
|
|
Remove deprecated GetGraph() from OptimizationViews. This method has
been deprecated for a long time and no backends still need it. Remove
include of Graph.hpp from the public headers.
Add includes elsewhere to deal with the header fallout.
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: I8dae275a8a446d9d0e19be62684e9b3cd2fa493d
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I43c0aff1b1e0ebbf37c1e8e878283d77d4975954
|
|
* Added Deprecation notices for old ElementwiseBinary layers.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I5bd0f186aaed675885d667f47e1e210ee9ec84f8
|
|
* Add cropping support to NEBatchToSpace
Change-Id: I021f288cec3549423f30192a5d26673772df4b34
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
|
|
* Implement OpaqueDelegateUtils.hpp using new accessors.
* Moved classic delegate utils to ClassicDelegateUtils.hpp.
* DelegateUtils.hpp now contains common utils.
* Removed unused ConnectConstant function.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I0fa611c82f5c06b0b7e0c37bfc343e09fb6a96c9
|
|
This reverts commit 52e90bf59ecbe90d33368d8fc1fd120f07658aaf.
Change-Id: I5a0d244593d8e760ee7ba0c9d38c02377e1bdc24
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
|
|
* Also added cmake for the new layers to reduce merge conflicts.
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: Ieb59aa2b7e2a18c57c9357b8d5b5cd63d8211c85
|
|
* conversion from ‘double’ to ‘float’ changes value
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: Iebcc8adea54590fb6153db503e1dfccb082c9bd3
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ibf7bf5eac91bf89101b1f20449edbbc542f3f679
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I74a93b1e2e5c9f12ce4523df3f21e5c0967fddfb
|
|
* Added Deprecation notices for old ElementwiseBinary layers.
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: Iebbbaff38cc9c347b25eb2f9054c914a4f931c68
|
|
* Fix BatchToSpaceFixture
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I40a7dabf25b96de7d31e4060390795035445d187
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I3ccfc2a4c95c57743927fb276faa756740f5c55a
|
|
* New folders created:
* common is for common code where TfLite API is not used
* classic is for existing delegate implementations
* opaque is for new opaque delegate implementation,
* tests is for shared between existing Delegate and Opaque Delegate which have test utils to work which delegate to use.
* Existing delegate is built to libarmnnDelegate.so and opaque delegate is built as libarmnnOpaqueDelegate.so
* Opaque structure is introduced but no API is added yet.
* CmakeList.txt and delegate/CMakeList.txt have been modified and 2 new CmakeList.txt added
* Rename BUILD_ARMNN_TFLITE_DELEGATE as BUILD_CLASSIC_DELEGATE
* Rename BUILD_ARMNN_TFLITE_OPAQUE_DELEGATE as BUILD_OPAQUE_DELEGATE
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ib682b9ad0ac8d8acdc4ec6d9099bb0008a9fe8ed
|
|
* Add Texture Pipe Support for Matmul Lhs T/NT Rhs T kernels
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I473677e39c7da38477fcce8a26fec0339a674a36
|
|
When creating a flatbuffers model, we need to provide an empty buffer 0 that is
reserved by tensorflow. When creating empty buffers for inputs and outputs we
can not pass in an empty vector, or tflite will assume that we know how many bytes to
allocate in advance. Instead we need to only pass in the builder.
* Update libraries in FindTfLite.cmake
* Add nullptr to delegate struct for OpaqueDelegateBuilder
* Fix issue in unit tests where Flatbuffers model was not being parsed by tflite
* Tensorflow 2.12 now includes C++ 17 features. Update our cmake build
to require a compiler to support these features.
* Change minimum cmake in Arm NN to 3.7 as that's the minimum for the
delegate build.
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com>
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: I7d15b196b8c59b1914f8fc1c4c2f8960630c069c
|
|
!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: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: Ied41eda5c1979d9a2dae192b437fbeb688a0fd13
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: Id5e5cb47c492f955584f7f0b76c2cc4706efd6bf
|
|
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I42a6f1d59d270e26c76f74ca4a295a142151ca01
|
|
The -A -B -C options in execute network were attempting to calculate
the RMS error over output tensors. However, the calculation was mixing
tensor elements and bytes when doing the calculation. This patch
changes the calculation to use a per byte RMS error calculation.
Signed-off-by: Colm Donelan <colm.donelan@arm.com>
Change-Id: If30230a16cfed1a8804b4d54ed1abcd371f26664
|
|
aync execution
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I6f921feaf591f0a1e27c373bb708c7ec8dfcbe43
|
|
This makes it easier to use, particularly in backends where it
is common to pass around const pointers to IConnectableLayer.
The non-constant version is rewritten to use the constant version.
Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
Change-Id: Id3a8384447e93c213299a85ade9a667df5960534
|
|
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
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I8d65673580924907db51d903d9054d1b0914493c
|
|
Previously we were adding a reshape layer to "broadcast" tensors
for elementwise operations. This broadcast was happening too late
and was really just an expand dims. This was breaking the constant
attributes of tensors and layer support of certain backends.
* Remove addition of reshape layer when expanding dimensions
* Replace broadcast function with expand dims to equal rank function
* Fix some error status checks in various layers
* Add new TensorUtil function that expands dims to a defined rank
* Add unit tests to new TensorUtil function
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: I31aca47c98075fef4f86864a15470f5faa55ab8d
|
|
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
|
|
* Added reshape before and after FullyConnected to support dimensions
> 2. This is now consistent with the Delegate and TfLiteParser.
* Refactored AddFullyConnected method to remove duplicate code.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I04dfeb38dbcac096c5fcd9dcb5e3821d38ce6550
|