aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-12-23IVGCVSW-6632 OptimizationViews: has INetwork rather than Graph for holding ↵Cathal Corbett
layers * Deprecate the GetGraph() function in OptimizationViews & remove/fix occurances where OptimizationViews.GetGraph() is called. * OptimizationViews has member INetworkPtr. * OptimizationViews has GetINetwork() method. * Unit test added to OptimizationViewsTests.cpp. Signed-off-by: Cathal Corbett <cathal.corbett@arm.com> Change-Id: Ifc1e53f1c34d786502279631942f0472f401038e
2021-12-22IVGCVSW-6252 Armnn Error: Failed to parse operator #1 withinCathal Corbett
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>
2021-12-21Add missing link dependency in armnnTestUtilsRob Hughes
armnnTestUtils depends on symbols defined in armnn, and so needs a link dependency on it. This is similar to e.g. armnnTfLiteParser. Change-Id: I1dfbde2e385c712c4033e47300c4fbaa9c40437b Signed-off-by: Rob Hughes <robert.hughes@arm.com>
2021-12-17IVGCVSW-6694 Disable long running Pooling3D unit test cases.Colm Donelan
* Disable the following test cases: LargeTensorsAveragePooling3d LargeTensorsAveragePooling3dUint8 LargeTensorsAveragePooling3dInt16 Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I908ce880b4d55598e913fc6b186f2bd2e796c613
2021-12-15IVGCVSW-6626 Promote backend headers in backendCommon to armnn/backendsColm Donelan
Move the following header files from backendsCommon to armnn/backends. * MemCopyWorkload.hpp * TensorHandle.hpp * Workload.hpp * WorkloadData.hpp * WorkloadFactory.hpp Replace them with forwarding headers and a pragma deprecation message. Resolve the deprecation messages in Arm NN code. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I47f116b30f86e478c9057795bc518c391a8ae514
2021-12-14IVGCVSW-6630 Add new method AddPrecompiledLayer() to INetworkCathal Corbett
* Add new method AddPrecompiledLayer() to INetwork with Comments noting it is for backend users. * Added unit test to SubgraphViewTests.cpp. * Bug fix and code refactor in Graph.cpp specifically around Graph::SubstituteSubgraph(SubgraphView& subgraph, IConnectableLayer* substituteLayer) Change-Id: If2d816e5109e48ce920bf92d8823b39130c23a16 Signed-off-by: Cathal Corbett <cathal.corbett@arm.com>
2021-12-14IVGCVSW-6453 'Move the ArmNN Test Utils code to a physically separate directory'Sadik Armagan
* 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
2021-12-13IVGCVSW-6581 Inclusive language changes on the OnnxParser.hpp fileTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I92213f8a72931d0c5be1272418617f72147665bb
2021-12-09IVGCVSW-6642: Add forwarding header for src/armnn/CompatibleTypes.hppFrancis Murtagh
Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: I375d57766adf7bcad825b4dfcdbf11d34add9921
2021-12-08Add addition timing logging outputJan Eilers
* Adds ExecuteNetwork when building the delegate only * Adds timings to delegate subgraph creation * Adds executions times Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Ieff2f67ea8dbb6c2a708f8810e84a20485b7a631
2021-12-08Add ModelOptions logging outputJan Eilers
Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I1947924504c1308442b816cff513b2080ed3cc0d
2021-12-01Revert "IVGCVSW-6252 Armnn Error: Failed to parse operator #1 within ↵Teresa Charlin
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
2021-11-26IVGCVSW-6252 Armnn Error: Failed to parse operator #1 within subgraph #0 ↵Tamas Nyiri
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>
2021-11-23IVGCVSW-6610 No bounds checking performed when indexing PermutationVector ↵Cathal Corbett
elements. * Added out of bounds index error checking to PermutationVector operator[] method in Types.hpp. * Added armnn unit tests to UnitsTests.cpp to check error when using PermutationVector alone and with TransposeDescriptor and PermuteDescriptor. * Added pyarmnn unit test to check error when using PermutationVector. Signed-off-by: Cathal Corbett <cathal.corbett@arm.com> Change-Id: Ie5a8090f07b571a6bdf79a8cad621c31cc1891b7
2021-11-18IVGCVSW-6452 'Move CompatibleTypes.hpp to the armnnUtils library'Sadik Armagan
* Moved CompatibleTypes.hpp to include folder * Added implementation file to source CompatibleTypes.cpp Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I94d2bffdb82a0592943f497d4f57972151d9f2db
2021-11-18IVGCVSW-6520 Extend pad workload for CpuAcc to support mirror paddingTeresa Charlin
* Add UnitTest for CpuAcc !ComputeLibrary: 6641 Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ic96b9e28d133cef73312b4ac793325f5e69b3d4d
2021-11-17IVGCVSW-6510 Serialization + Deserialization implementationTamas Nyiri
Subtask of story: IVGCVSW-6164 Add a Pooling3d FrontEnd and Ref Implementation * Add serialization support * Add deserialization support * Add corresponding unit tests Change-Id: I7cce5421f0a9b7c47a03524e733f3315131ba125 Signed-off-by: Tamas Nyiri <tamas.nyiri@arm.com>
2021-11-17IVGCVSW-6509 Front End + Reference Workload implementationTamás Nyíri
Subtask of story: IVGCVSW-6164 Add a Pooling3d FrontEnd and Ref Implementation * Add front end * Add reference workload * Add corresponding unit tests Change-Id: Icce4146dd0a06a1da46a2def00a82d343e171750 Signed-off-by: Tamas Nyiri <tamas.nyiri@arm.com>
2021-11-15IVGCVSW-6519 Extend pad workload for GpuAcc to support mirror paddingTeresa Charlin
* Add UnitTest for GpuAcc Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I235900dc62fb043c5ce9c8cd4f63dcc4e5393233
2021-11-15Add missing QSYMM8 to GetPixelValue()Tamas Nyiri
* Detected to be missing after adding validation to PadWorkload Signed-off-by: Tamas Nyiri <tamas.nyiri@arm.com> Change-Id: I3b2c58f414456008543db299a8461dad5b4d2a96
2021-11-10IVGCVSW-6569 Fix SingleAxisPriorityListFinn Williams
* Fix overlap detection with strategy validator Signed-off-by: Finn Williams <finn.williams@arm.com> Change-Id: If9d9d9586864cef7d109aad24bdb0f682fefb1bd
2021-11-10Fix typo errors from ticket IVGCVSW-6420Cathal Corbett
* Typo errors from ticket 'Constant flag in tensor info is not set correctly'. Not fixed due to code freeze deadline. Signed-off-by: Cathal Corbett <cathal.corbett@arm.com> Change-Id: Id80ba60647d1970115a8cf200f0d71e4fada9b30
2021-11-09IVGCVSW-6420 Setting a const tensor flag was missing inthe TfLite parser.Colm Donelan
* The TfLiteparser was returning non const TensorInfo's for input tensor BindingPointInfo. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I20942aaef3afe7c91cf19fc3c007bec35828e69e
2021-11-09IVGCVSW-6558 Fix the failing OptimisedNetworkTestsDavid Monahan
* With the new Memory Management updates input tensors should now match the backend of the layer they are attached to. Updated the test to reflect this. Signed-off-by: David Monahan <David.Monahan@arm.com> Change-Id: I4e7fbd3f2f40d349c39cdf0d7bfef1262144181b
2021-11-09Fix use of non-standard "uint" typeTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I476608976c52df97677a64af94767d3945dd9475
2021-11-08IVGCVSW-5636 'Implement NNAPI caching functions'Sadik Armagan
* Serialize/Deserialize axis parameter on Softmax Descriptor. Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I1bba0dd7d78f9f211f77115dcefccf24a4a61b39
2021-11-08IVGCVSW-6420: Constant flag in tensor info is not set correctlyCathal Corbett
!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
2021-11-08Fix MemoryOptimizerStrategyLibrary searchFinn Williams
Signed-off-by: Finn Williams <finn.williams@arm.com> Change-Id: I4ca8d9196abd0e116d420a36c780e39edbca0eb3
2021-11-08IVGCVSW-6527 Support the new memory API in loaded networkFinn Williams
* enable external memory management for neon and ref backends * change m_TensorMemoryVector to hold shared pointers * change input layer backend Id to match backend id of connected layer Signed-off-by: Finn Williams <finn.williams@arm.com> Change-Id: I2216a724028312eb101b290df3f224177826b1a0
2021-11-05Fix use of non-standard "uint" typeRob Hughes
Change-Id: I474e5e40550d61f873fd930fe33b0e1e9f9992cc Signed-off-by: Rob Hughes <robert.hughes@arm.com>
2021-11-05IVGCVSW-6412 Implement CLBackend ICustomAllocatorDavid Monahan
* Added implementation of ClBackendDefaultAllocator * Added back in some pure virtual functions that were mistakenly removed from the CustomMemoryAllocatorSample * Added a new Gralloc MemorySource for memory which originates from the gpu * Added unittests Signed-off-by: David Monahan <David.Monahan@arm.com> Change-Id: Id2abb33d82697df36426f5709756c616af3e8ed7
2021-11-04IVGCVSW-6303 Create a SingleAxisPacking strategyFinn Williams
* add fsrcnn and mobilebert memory profiles to the strategy benchmark Signed-off-by: Finn Williams <finn.williams@arm.com> Change-Id: Ibd8b26f2153c561e5c5bec477f6246d0e8ffa4af
2021-11-03IVGCVSW-6517 Delegate Json output is invalidKeith Davis
Change-Id: Iee9720a9df6f2f0d8e00313e1972f3a3df33cb15 Signed-off-by: Keith Davis <keith.davis@arm.com>
2021-11-03Bug Fix in CpuAcc and GpuAcc workload: Gather has 2 inputsTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ifbb9332c78c843c5b937c4e1b50a8f5a75409e73
2021-11-02Move command line parsing in external delegate to DelegateOptionsJan Eilers
* Moves the creation of a DelegateOption object from armnn_external_delegate to DelegateOptions. * This allows this code to be reused elsewhere * Allow boolean values of DelegateOptions to be passed as strings e.g. 'true' or 'false' * Add unit tests Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I0ada17f511027dd3f47a85142cae346464682f5a
2021-11-01IVGCVSW-6528 'Build Failure on Arm NN'Sadik Armagan
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Iad30ae6ec8b34f880a855da64758b02d067501db
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-11-01IVGCVSW-6440 Add profiling around CL workload configure callsKevin May
Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: I7626d5bd82e832d5be6913719a34d76fbd1dbed8
2021-10-28IVGCVSW-6513: Compilation failure in armnn-mobilenet-quant in ML-ExamplesFrancis Murtagh
* Move TContainer to armnnUtils library Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: I3c0f895d11b66f6ee224ac689a19d0477f990b98
2021-10-28IVGCVSW-5636 'Implement NNAPI caching functions'Sadik Armagan
* Get number of inputs and outputs from optimized network. * Get number of cached files if backend supports caching. Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Ie02ac123bb7df9b0593a2fe46b5bb564a5994780
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-27IVGCVSW-6469 Add MirrorPad FrontEnd and Ref SupportMatthew Sloyan
* Added PaddingMode enum to PaddingDescriptor to enable Symmetric and Reflect padding. * Added Symmetric and Reflect Ref implementation. * Added Serializer & Deserializer support. * Added unit tests. Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: I4bed907b31742b32ccefe5e8ca39a6f1e5bd9dee
2021-10-27IVGCVSW-5879 Fix problems with using internal profiling from delegate.Colm Donelan
* Pass through the value of m_EnableProfiling from Executenetwork to DelegateOptions. * If internal profiling is enabled print it out from inside the delegate. * Remove an unnecessary ProfilerImpl instance from WorkingMemhandle.hpp * Remove an unnecessary parameter from TfLiteDelegateMainImpl in ExecuteNetwork. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: Ia1d4b1eb3a05ca5b4d80cc39e138c7fac182d948
2021-10-27IVGCVSW-6291 Issue parsing profiling layer detailsKeith Davis
* Remove ConfigureDetailsObject function as it does not have ProfilerImpl scope * Add Graph title into Json structure Signed-off-by: Keith Davis <keith.davis@arm.com> Change-Id: Ia5068a5a457a77fd01e974e0b5aa0f309f15bfa7
2021-10-27IVGCVSW-6169 Add GpuAcc Conv3d WorkloadTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I8b73dccc14ef71cc083896102e24afb2e56e72e2
2021-10-27IVGCVSW-6170 Add CpuAcc Conv3d WorkloadTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I3a5bfef5a0085d172fd3689e67f25af909ace2ee
2021-10-26IVGCVSW-6470 Create MemoryStrategyBenchmarkJim Flynn
* Refactor the strategy library to be more generic * Shorten the names of the current strategies * Change validatorStrat to throw exceptions Change-Id: I0d9c9ef609b2d8675e5788610d1accac6767c660 Signed-off-by: Finn Williams <finwil01@e127804.cambridge.arm.com> Signed-off-by: Jim Flynn <jim.flynn@arm.com>
2021-10-26IVGCVSW-6301 Create the MemoryManager classTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Signed-off-by: Finn Williams <finn.williams@arm.com> Change-Id: Ia41b5252d695daabd5afaf1b2267444d24be173a
2021-10-22Bugfix: GCC-11 stringop-overread warning treated as errorFrancis Murtagh
* Occured in Ubuntu Impish * GCC Bug: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99578 Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: Ic2b1ae64bb2f1362ec3eb5c2b7a829deee2e9018
2021-10-22IVGCVSW-6359 Create a single definition of TContainerDavid Monahan
* Added a single definition of TContainer to include/armnn/Utils.hpp * Change all files which contained their own identical definitions of TContainer to use the new one Signed-off-by: David Monahan <David.Monahan@arm.com> Change-Id: I63e633693a430bbbd6a29001cafa19742ef8309a