Age | Commit message (Collapse) | Author |
|
This reverts commit d5e11decae33b60fb8b35039bf5ed388b2fb6ff2.
Bug: 278832962
Test: Local CtsNNAPI CTS
Change-Id: Ib9061b441683b7124f6596861dfeb1e4e1835b8e
|
|
Revert submission 2563157-armn_nn_update_278832962
Reason for revert: The change breaks aosp_x86-eng compilation.
Test: local build
This reverts commit 69a666ddb01cbe66e3de808fc4ff8192a552e50d, reversing
changes made to 094cd640f7f302cae481bfdfb76ddc2d89d7ca86.
Change-Id: I4c66077d15a02f1211fbdafa94a58ef1b49fe8e1
|
|
* 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
|
|
* 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
|
|
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
|
|
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
|
|
* The only way to build TOSA common was to enable ARMNNTOSAREF.
* Only include and link the required headers/libraries for TOSA Common.
* Remove duplicate include_directories calls.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ia5a19bf5b0bb903be0248ac550439df1e8ac5aa7
|
|
* 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
|
|
* .o files were being installed by cmake.
Change-Id: Ie2056e09b4800fe208d784a90f3908d508b8cadf
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
|
|
* Removed weights and bias from Convolution, DepthwiseConv & FullyConnected
layers
* Removed the weight and bias ConstTensorHandles from the QueueDescriptors
* Updated Workloads to take tensors from WorkloadInfo rather than the
QueueDescriptors
* Removed unused RedirectMembersToConstantInputs optimization and tests.
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I9ffcdc4a1c0dff725539dd69fc435b700bd98a56
|
|
- Remove Bf16ToFp32 Conversion Layer
- Remove Fp32ToBf16 Conversion Layer
- Remove B16 Conversion tests
* Throw exception if m_ReduceFp32ToBf16 optimzer option is set to true
* Provide comments to enable fast math in order to use bf16
* Update docs to inform users to enable fast math for bf16
Execute Network Changes
* Require bf16_turbo_mode to also have fast_math_enabled set to true
- Remove setting m_ReduceFp32ToBf16 optimizer option
Signed-off-by: Ryan OShea <ryan.oshea3@arm.com>
Change-Id: Ibaa6da9d29c96a1ce32ff5196b0847fde9f04a1c
|
|
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: Ie9aa1aa20a5bc837e005a7a36d4d07b4cd8d021b
|
|
* Files deleted when Stabilizing the API
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I0ae73ee36968fa880761c10358bfa827be5fe054
|
|
* Added armnnTfLiteParser for BatchMatMul
* Added unit testing for parser
* Updated CMakeLists
Signed-off-by: Samuel Yap <samuel.yap@arm.com>
Change-Id: If6842aaf7cf08f688093b714e2ecea6e8cd87161
|
|
* Updated FlatBuffers schema for BatchMatMul layer type
* Added Serializer and Deserializer implementations for BatchMatMul
* Added unit tests for BatchMatMul serialization and deserialization
* Updated CMakeLists and docs
Signed-off-by: Samuel Yap <samuel.yap@arm.com>
Change-Id: Iad63afbd036a3eb648683eb7416a475561aa20cb
|
|
TosaMappings operator.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: Ibea0cf625b3af4ab38e8b985f7a129c983ca9659
|
|
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: Ib4433767ba8bd3282a9b19c2a85ff1a6e7e83df5
|
|
* Originated from a GitHub issue: https://github.com/ARM-software/armnn/issues/667
* Initially, Arm NN supports the pool 2D operation because there is no padding
on the pool2d. Neon failure occurs when padding is followed by average pool 2D
due to folding optimization.
* Here we prevent the folding optimization from happening for the above special case
and add it in as a backend specific optimization.
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: Ia0fd90c3a6b4b9d29c81106f154617d2e893e26b
|
|
* Descriptors added for BatchMatMul
* Layer definition added
* Input validation added (will likely change when opt. param support comes in)
* Ref workload implementation for BatchMatMul added (will also change with opt. param support)
* Ref layer tests made for BatchMatMul
* CMake and other build files updated
Signed-off-by: Samuel Yap <samuel.yap@arm.com>
Change-Id: Ic885301da543ee0fbe7922b85e7f9658c4efc617
|
|
Fp32NetworkToBf16Converter
* Fuse FP32ToBF16Layers with Constant Layer so Conv2d/FullyConnected
can have their weights redirected.
* If BF16 Unsupported in Conv2d || FullyConnected revert fused
Constant Layer to FP32
Change-Id: If523c708a822659d64597d9ae39cca1c2f84b76f
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
|
|
* Remove ARMNN_TF_LITE_DELEGATE and DARMNN_TF_LITE_DELEGATE
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I3fc08da3fa0b733e6791c42f6bc59494f2bc26a6
|
|
* ExecutionData holds a void* which can be assigned to data required
for execution in a backend. WorkingMemDescriptors are used in the Ref
backend which hold TensorHandles for inputs and outputs.
* Updated ExecuteAsync functions to take ExecutionData.
* Added CreateExecutionData and UpdateExectutionData to IBackendInternal.
* Streamlined experimental IWorkingMemHandle API by removing map related
function and unused m_workingMemDescriptorMap from WorkingMemHandle.
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com>
Change-Id: I54b0aab12872011743a141eb42dae200227769af
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I58b2c3fa846795cb2d0f88465c645c0a2fdf7fdc
|
|
* adds a version script to hide away all symbols that
are not required to use the interface
* the main purpose of the jni interface is to enable the
delegate to be used in android apps
* Add static building to patch - see patch 7 for JNI patch only
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I9bb2d698b5fdb0d1b30cf79e6f19746310cd61b2
|
|
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
Change-Id: I9ccaefbe28ea572e9e2b4a2168574804667f7460
|
|
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I20e22821b6d4532953ddec2a8eac2a0f09e8013b
|
|
* Updated Serializer CMakeLists.txt to build armnnSerializerObj
* Added constant tensors as input support to SL
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com>
Change-Id: I22f6cf50147d99a01f7fe70d7446b114a4c57af3
|
|
* Removed the pre-generated ArmnnSchema_generated.h
* This version was generated using flatbuffers v1.12.0 and it contains
code that's incompatible with newer versions
* Android.mk will look for ArmnnSchema_generated.h in the armnnGenerated
directory in the armnn directory.
* The Serializer and Deserializer will look for ArmnnSchema_generated.h
in the armnnGenerated directory.
!android-nn-driver:7626
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
Change-Id: I13ff6b6c78740cf1f82750f56caab83200e6a3e5
Signed-off-by: Mike Kelly <mike.kelly@arm.com>
|
|
* No trailing permute layer after a constant layer
* Unit test for optimization
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
Change-Id: I0d098f5af41d2c55df7cef1ccfb848093320ddc1
|
|
* Support Float16 as input to Dequantize layer
* Add Optimization to substitute Const+Dequantize layers with Const layer
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I58bb7e3871ca480c7b6fca93c4efb2de84e09e64
Signed-off-by: David <david.monahan@arm.com>
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I8142072f104b23c6eaf80b54cf6ddfa0393c4921
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: Ibab3525d53edbdf6a48e43b2bf668fcd2efaba58
|
|
* Add front end
* Add reference workload
* Add unit tests
* Add EndToEnd test
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I4cebd17b18476df86162e2dda3366c10e80bd2f8
|
|
Change-Id: Ice69c2a22f589f68d302f80500dfe4e514a796d2
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Change-Id: Icc2f83c5f27f413758fee3e5c1445e9fc44f42c8
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
* Add map file generation to ArmNN for debug mode
Signed-off-by: Keith Davis <keith.davis@arm.com>
Change-Id: I10ae17cd0e1d83a903eaebd95e2b06d0aa771f96
|
|
Change-Id: I2368aade38ad3808fab55d8a86cd659d4e95d91e
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
!android-nn-driver:7337
Change-Id: Ide401623829cc99fb9b51e9bbce3482ce706a8dd
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Change-Id: Ib14fdcca15f40fedc0f992b0fd882458dc58c9ba
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Change-Id: I18b8ca22896567904768170350ee5eb22edd4a22
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Change-Id: I13353f50293eae565a75ccfda37209350512bbc6
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I7ab32f2998c2bc25fee8831d4be724286263b4b3
|
|
Change-Id: I87ce3a1306eced9fc347cc383d9c7bc8994f0b0c
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Change-Id: I00521756c8a19d10bfdc98c6ef4204c7f84901c6
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com>
Change-Id: I82f3bd99b3c1d4d8a013b1e987a533a8071fbeea
|
|
Change-Id: I30a46f3368bbbf33019eac4fa1245f6ff69deacd
Signed-off-by: Jim Flynn <jim.flynn@arm.com>
|
|
* Remove LayerSupport.hpp which was replaced with ILayerSupport interface
and the BackendHelper.hpp GetILayerSupportByBackendId() function
* Fix bug in backend helper where value of Optional was passed even if
Optional had no value.
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
Change-Id: I03f1f693abe927a14c1942ef7e21edccc8357b35
|
|
* 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
|
|
* 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
|