aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
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
2021-10-22IVGCVSW-6440 Print new Optimize and LoadedNetwork profiling pointsKevin May
* Add parent LoadedNetwork profiling point * Make generic populateParent function to print new descendents in json Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: I41dc876bffae88e61a16d07fb13b062c321e78a6
2021-10-21IVGCVSW-6474 Fix calculation of BindingId vector sizeFinn Williams
Signed-off-by: Finn Williams <finwil01@e127804.cambridge.arm.com> Change-Id: If128ed0a8ed2b9a0ed8001715133ba5a6c6d682c
2021-10-21IVGCVSW-6451 Add support for Reshape when the target shape is dynamicNarumol Prangnawarat
and batch size is unknown to ONNX parser Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I46b2daccce9e1a21d9d0550ac4126d2c79dbd37b
2021-10-21Fixed macro redefinition in Half.hppPablo Tello
* Fixed the compiler warnings about macro redefinitions when building the driver * Resolves MLCE-622 Change-Id: I7231f9772dc0f38191853ff378670d45648ef7f6 Signed-off-by: Pablo Tello <pablo.tello@arm.com>
2021-10-20Add ConstTensorsAsInput support for Conv3dMatthew Sloyan
* Constant weights and biases are now stored as Constant layers. * Updated Serializer, Deserializer and unit tests to reflect this. * Updated TfLiteParser. * Updated Ref backend to handle constant weights and bias as inputs rather than reading from member variables. * Added Conv3d EndToEnd test. * Added NCDHW DataLayout and unit tests. Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: I10cdd354ca5f1c748730f92ffdb36bf810f83c8e
2021-10-19IVGCVSW-6310 Update ICustomAllocator and add GetDefaultAllocator function to ↵Francis Murtagh
backends Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: If2879e8a82692285e7fa3f4d09abd608ca28de12
2021-10-18IVGCVSW-6450 Add Support of Models with Dynamic Batch Tensor to ONNX parserNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Ia7dbf0735619d406d6b4e34a71f14f20d92586e6
2021-10-15IVGCVSW-6474 Fix output validationFinn Williams
Signed-off-by: Finn Williams <finwil01@e127804.cambridge.arm.com> Change-Id: I84b52f8c7d7d0c1063c0daae0750dd820447aa6c
2021-10-15Refactor: Profiler moved to GraphDerek Lamberti
* This is to enable later work to instrument the Optimizer. Signed-off-by: Derek Lamberti <derek.lamberti@arm.com> Change-Id: I2cf1fe022e0d100d6d8705adfbb8cab3ffc96a86
2021-10-15Profiling instrumentation throughout the OptimizerDerek Lamberti
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com> Change-Id: Ifcdafc12ca09455af2389bf84e34b6b87bbb0b15
2021-10-15Instrument runtime network loadDerek Lamberti
Signed-off-by: Derek Lamberti <derek.lamberti@arm.com> Change-Id: I2705fe04b5ec3a6046584d443f10d2d5cb3b5b87
2021-10-14IVGCVSW-6416 AddFullyConnected API crashes without connected weights/bias layersCathal Corbett
* Created method in Graph.cpp/hpp ConstructErrorMessageForUnconnectedInputs() to verify weights and bias are set for FullyConnected layers. * Above method called in Graph.cpp InferTensorInfos() to print a more descriptive message when the weights or bias for a FullyConnectedLayer is not set. * Added try-catch in TestUtils.cpp Connect() to ensure input slot is available when connecting two layers. This ensures we catch the case where bias is is not enabled and we try and set a bias layer. * Added unit tests to check for LayerValidationError when weights or bias is not set on a FullyConnectedLayer. * Added unit test to check for LayerValidationError when bias is not enabled and we try and connect bias to FullyConnected Layer. * Seperated FullyConnected EndToEnd unit test method into two methods. First, performs tests on EndToEnd examples asserting output value. Second, performs tests on error catching. * Added comments to created methods. Signed-off-by: Cathal Corbett <cathal.corbett@arm.com> Change-Id: I5207d8c5ebacfff598556742ccd4f53eef7dee0c