aboutsummaryrefslogtreecommitdiff
path: root/delegate/CMakeLists.txt
AgeCommit message (Collapse)Author
2023-04-13IVGCVSW-7564 Implement Cast operator for Opaque DelegateRyan OShea
* 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
2023-04-07IVGCVSW-7563 Implement DelegateTestInterpreter for opaque delegateMatthew Sloyan
* 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
2023-04-05IVGCVSW-7562 Implement DelegateTestInterpreter for classic delegateMatthew Sloyan
* 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
2023-04-05IVGCVSW-7560 Implement Armnn Subgraph in Opaque DelegateRyan OShea
* 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
2023-03-31IVGCVSW-7556 Introduce Opaque Delegate APIFrancis Murtagh
* Also added cmake for the new layers to reduce merge conflicts. Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: Ieb59aa2b7e2a18c57c9357b8d5b5cd63d8211c85
2023-03-28IVGCVSW-7555 Restructure DelegateTeresa Charlin
* 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
2023-03-22IVGCVSW-7526 Upgrade ArmNN to Tensorflow 2.12Ryan OShea
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
2023-01-06IVGCVSW-7031 Generate static execute networkRyan OShea
* 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
2022-11-22IVGCVSW-6980 Delegate support for slice operatorCathal Corbett
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com> Change-Id: I90d800160b070e25d999b5102a7ce6d3e0ed6a81
2022-10-21IVGCVSW-7126 Update Arm NN to Tensorflow 2.10Colm Donelan
* Modify get_tensorflow.sh to point to the 2.10 Tensorflow tag. * Modify FindTfLite.cmake to handle the break up of libruy.a * Modify armnn_delegate.cpp to add registration_external field. * Prevent the serializer/deserializer from using a system installed version of flatc. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I688f33f387924ba29bf400f60e56f73b2329fdc1
2022-09-22IVGCVSW-6498 Add Support for Batch MatMul to TfLite DelegateRyan OShea
* Creates delegate/src/BatchMatMul.hpp * Add VisitBatchMatMul function * Add BatchMatMul to switch in armnn_delegate * Creates delegate/src/test/BatchMatMulTest.cpp * Creates delegate/src/test/BatchMatMulTestHelper.hpp * Add Int8 and Fp32 unit tests on ref backend * Add BatchMatMul to delegate supported ops Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Change-Id: I50e61314cf063f986c8a0f7d508847a96953735e
2022-06-29Add jni interface for the ArmNN DelegateJan Eilers
* 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
2022-06-15IVGCVSW-6946 Add Pool3D to tflite delegateRyan OShea
* Add new test and test helper for Pool3d * Add new custom operator to switch in armnn_delegate.cpp * Add new pool3d function to pooling.hpp * Update doxygen Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Change-Id: I77a541bf423b337c749e70c564cdd727efe2fd05
2022-05-04IVGCVSW-6858 Add GATHERNd Support to the TfLite DelegateTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I56418875b3bb2ae45b5c69bfeaafa1a6126b8085
2021-11-08Fix stand-alone delegate buildJan Eilers
* adds missing dependencies to fix errors when building the armnn delegate on its own Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I9bb676febc80eba277f981f5536a9add48e7f6dd
2021-11-01IVGCVSW-6457 Add FLOOR_DIV Support to the TfLiteDelegateJim Flynn
Change-Id: Ia4bf42b1f3f86b947825dff8e538d2d4343effab Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2021-10-27IVGCVSW-6469 Add MirrorPad TfLiteParser and TfLiteDelegate SupportMatthew Sloyan
Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: Ia1c97adb401c5381341408ec1e4da287ef2d48fe
2021-10-22IVGCVSW-6166 Add Support for Conv3d to TFLite DelegateMatthew Sloyan
* 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
2021-09-29IVGCVSW-6160 Support building tensorflowlite 2.5 through cmakeKeith Davis
Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: I825f09d008505e701d42b79be936f4da24620c06
2021-09-23IVGCVSW-6181 patch to allow building against tflite > v2.3Jim Flynn
Change-Id: I292add699b2af32fab87b98929fe6fee79fdf356 Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2021-09-22IVGCVSW-6232 Integrate static library libtensorflow-lite.a with ArmNNKeith Davis
Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: Ieb5fa0c4bb6753f0af21cfd80f1bf9faba55f7d0
2021-08-31MLCE-530 Add support for UnidirectionalSequenceLstm to armnn delegateNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Ib04f8d6b9e60a4204c56eba4c2ecd2b316509dcc
2021-06-18MLCE-510 Add CpuRef Shape Operator to ArmNNKeith Davis
* Add TfLiteParser and delegate support Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: Id3219ba7cc7128b5e73de2c7d8d076a40dcce9c5
2021-05-27IVGCVSW-6061 Add PRELU support to TF Lite delegateJames Conroy
* Alpha is supported both as a constant and as an input tensor. Signed-off-by: James Conroy <james.conroy@arm.com> Change-Id: I20f30d479b87dc5fbcf75a1ce5305d70ae9b0646
2021-05-10IVGCVSW-5970 TfLiteDelegate: Add UNPACK operator SupportKevin May
Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: I23731718236043b46c143eaf416cb375edd93983
2021-05-06IVGCVSW-5969 TfLiteDelegate: Add PACK operator SupportMatthew Sloyan
* Added support for PACK which is equivalent to Arm NN STACK Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: I9ea134d0310eeea1caba30a8b9221712e9487c75
2021-04-28IVGCVSW-4618 'Transition Units Test Suites'Sadik Armagan
* Moved doctest third-party library to armnn from delegate. License file is added. Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I4257c492ffd1c2d1b695ae4fc3ae70432acbaded
2021-04-23IVGCVSW-5430 'Add CAST Operator Support to Delegate'Sadik Armagan
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I6da711950b8e7d3c0d5cbd443e91eb36700ac4c8
2021-04-09IVGCVSW-5803 Delegate Unit Tests Failure on Android: Normalization & SoftmaxKeith Davis
Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: I2873f8563cc11da550d460b04e5175372489a564
2021-02-25IVGCVSW-5401 Implement the FILL operatorSadik Armagan
* Added FILL operator to TfLite ArmNN Delegate * Added unit tests Signed-off-by: David Monahan <david.monahan@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I335ef469ff773fa4305eb87f6e93ae9c03fc6997
2021-02-18IVGCVSW-5394 TfLiteDelegate: Implement the Lstm operatorMike Kelly
* Add LSTM operator Signed-off-by: Mike Kelly <mike.kelly@arm.com> Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: If8c667685fa1176738ffe2e6d08b1c684e7ee6b2
2021-02-15IVGCVSW-5386 TfLiteDelegate: Add Strided Slice operatorJan Eilers
Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Icd87b1c54e1a5de84893882da30840a9097f6d84
2021-02-11IVGCVSW-5392 TfLiteDelegate: Implement the Batch/Space operatorsMatthew Sloyan
* Added support for BATCH_TO_SPACE_ND and SPACE_TO_BATCH_ND Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: Ib29333f3e2bc1a18bcc63533da4369b63c45ab90
2021-02-10IVGCVSW-5400 'TfLiteDelegate: FLOOR operator support'Sadik Armagan
* Added FLOOR operator support to Arm NN TfLiteDelegate Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I986ce8c5a825f509e0f8b3d257fd5b60834c322f
2021-02-09MLCE-347 'REDUCE_MIN, REDUCE_MAX, REDUCE_SUM Support'Sadik Armagan
* Added TfLiteParser support for REDUCE_MIN and REDUCE_MAX operators * Added ACL workloads support for REDUCE_MIN, REDUCE_MAX, and REDUCE_SUM operators * Added TfLite Delegate support for REDUCE_MIN, REDUCE_MAX, and REDUCE_SUM operators Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I8085d59946bfd4ab78a59a61f899031ae53371a8
2021-02-08IVGCVSW-4901 Add semantic versioning to Parsers and TfLite DelegateMatthew Sloyan
* Added Version.hpp to all Parsers * Added Version.hpp to TfLite Delegate * Updated CMakeLists to use new versions * Added GetVersion method to parsers and TfLite Delegate Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: If29e1e6d9e615f9095ec1c01ad47acfff40b1dd5
2021-01-26IVGCVSW-5391 'ArmNN TfLiteDelegate: Implement the Space/Depth operators'Sadik Armagan
* Added DEPTH_TO_SPACE and SPACE_TO_DEPTH operators support Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I2595f759181bd7339127e7b114b850b534210dd5
2021-01-26IVGCVSW-5390 'TfLiteDelegate: Implement the Normalisation operators'Sadik Armagan
* Added L2_NORMALIZATION and LOCAL_RESPONSE_NORMALIZATION opertor support Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Ic9e66879cf6469fa8761fb1c9dd5950771f629b0
2021-01-25IVGCVSW-5619 Add OptimizerOptions and NetworkProperties to ArmNN DelegateNarumol Prangnawarat
* Add OptimizerOptions, NetworkProperties, DebugCallbackFunction to DelegateOptions * Enable OptimizerOptions when the network is being optimized * Enable NetworkProperties when loading network * Enable DebugCallbackFunction * Add error message when loading network * Log warning instead of error when operator is not supported but could fallback to another backend * Improve uint16_t CompareData * Unit tests Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I353035afb442774bfeb1c62570a90755c2ceaf38
2021-01-22IVGCVSW-5571 Expose the TfLite Delegate to the TfLite python APIJan Eilers
* Implemented external delegate adaptor interface for TfLite * Activated armnn logging for delegate * Added logging info to indicate if gpu tuning is turned on * Added pytests to ensure functionality of the external delegate adaptor * Included the delegate directory into doxygen * Added documentation on how to use the external delegate in python Signed-off-by: Finn Williams <Finn.Williams@arm.com> Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Id3b4588fb0b9ac7e3f47ba2c19feead7beb58e18
2021-01-19IVGCVSW-5399 'TfLiteDelegate: Implement the ArgMinMax operators'Sadik Armagan
* Added ARG_MIN and ARG_MAX support to armnn_delegate Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Ia000c4b64378e28320164edd4df2902ca13dcda6
2021-01-13IVGCVSW-5625 Add support for Float16 to DelegateNarumol Prangnawarat
* Float16 unit tests for Reshape * Remove unsupported data type from Pad Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Ib1804bb6e708a0552fb40d05fe8a6511936f9793
2020-12-17IVGCVSW-5383 TfLiteDelegate: Implement Pad and PadV2 operatorsNarumol Prangnawarat
* Add Pad and PadV2 operators support to Armnn Delegate * Add dimension check to CompareOutputData test utility * Unit tests Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I9d00eb08f71e791498908fcbdb9de561e1c01aef
2020-12-17IVGCVSW-5374 Provide an Android build for the delegateFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I33eb8c650be654ad891afd2295f2057f13a9d084
2020-12-07IVGCVSW-5381 TfLiteDelegate: Implement the Logical operatorsMatthew Sloyan
* Implemented Logical AND, NOT and OR operators. * NOT uses existing ElementwiseUnary VisitLayer function & tests. * AND/OR uses new LogicalBinary VisitLayer function & tests. Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: I5e7f1e78b30c36ac7f14c70a712b54f98d664b83
2020-11-30IVGCVSW-5587 Remove Tensorflow requirement from Arm NN TfLite delegateFinn Williams
* Added support for building the delegate with an external armnn path * Replaced potentially troublesome package manager * Explicitly set the privacy levels of delegate libraries * Fixed some error handling in ExecuteNetwork Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: I2a7abc099796012cbb043c5b319f81778c9f3b56
2020-11-30IVGCVSW-5393 'TfLiteDelegate: Implement the split operators'Sadik Armagan
* Added SPLIT and SPLIT_V support to armnn_delegate Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I2def9b8be783b25ef17a997e521c6027553035d3
2020-11-26IVGCVSW-5384 TfLiteDelegate: Implement the Gather operatorTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Iaf2112363d2b191327711d8e083fee2a751c35c5
2020-11-18IVGCVSW-5397 TfLiteDelegate: Implement the redefine operatorsDavid Monahan
* Adding Reshape definition to ArmNN TfLite Delegate * Added Reshape tests and RedefineTestHelper Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I6d3909689c820387ac0fd4fd3f7ab856ebc25f47
2020-11-18IVGCVSW-5543 Fix delegate Pooling2d failures on CpuAcc/GpuAccJan Eilers
* Added tolerance when comparing data * Removed unsupported int16 tests Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I10f3ac26b894bb1da3af61bfe2d2a41c2f5d2bb1