aboutsummaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2024-05-13Add deprecation notices for items to be removed in 24.08.Colm Donelan
* Onnx parser. * Async execution interface. * Shim and support library. * Arm NN converter * GpuFsa backend. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: Ia9adae4da6d9bd2b92a4f4492a022e8337f57f14
2024-05-07IVGCVSW-8350 Enable serialize-to-armnn only when ARMNN_SERIALIZER is on.Colm Donelan
Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I8f036370aa87f8aa54316996aafc5baed18ecc2c
2024-04-30Adding options to serialize networks to ExecuteNetwork.Colm Donelan
* Adding serialize-to-armnn parameter to execute network to serialize the pre-optimized network to a .armnn file and the optimized network to a .dot file. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: Ia12cf0b08d36334127264ea3fcc8e64b65f06dae
2024-04-09IVGCVSW-8298 Fix failing fsrcnn testNikhil Raj
Change-Id: I03c26ab763ec306a6efe31f9b4e0b1c058589bf7 Signed-off-by: Nikhil Raj <nikhil.raj@arm.com>
2024-04-02IVGCVSW-8224 Minor change to the printouts in ExecuteNetwork.Colm Donelan
Adding some human readable information to the "Inferences began" and "Inferences ended" printouts to make them clearer. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I00b2b75a9da19c27fd33574e3bb0b9a1d8e5c5b5
2024-03-28MLCE-1245 Fixing runtime memory handling in delegate and ArmNN executor.Colm Donelan
Neither the armnn_delegate nor the ArmNNExecutor unloaded their network before being destructed. This was leaking significant memory. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I61db2e6cbbff4ec4771e86ac71eab90c02389c9e
2024-03-28Revert "IVGCVSW-8298 Fix FSRCNN CI Failure"TeresaARM
This reverts commit 518a1e4a438f47267235cff450d03efc8e7599d8. Reason for revert: <Nightly test failing> Change-Id: Ie595d1831a8391a1c9624beced4bae37898438a7
2024-03-28IVGCVSW-8298 Fix FSRCNN CI FailureDeclan-ARM
* Skip inference if profiling is set to output details only Signed-off-by: Declan-ARM <decmce01@arm.com> Change-Id: I9f35d8b1237bfa66790322a40f7ae6d09bbf6eb1
2024-03-06IVGCVSW-7761 Highlight invalid use of asynchronous and TfLite executor.Colm Donelan
In Execute Network the Tflite runtime execution does not support an asynchronous mode. Inform the user if they have specified an asynchronous parameter and TfLite executor. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I9c5ecb91954c2293a013d110555ecff4aabbfc23
2024-02-28IVGCVSW-8172 Add macOS support to build tool setupTracy Narine
* Updates build rules for platform * Failing unit tests excluded (dynamic backends, profiling) * install-packages.sh generates manual setup information Signed-off-by: Tracy Narine <tracy.narine@arm.com> Change-Id: I2d3d434aa615a8796c0cb94cd5b9c35a5acfd148
2024-02-12MLCE-1205 Continue delegate inference following kTfLiteApplicationErrorColm Donelan
* Detect kTfLiteApplicationError from the TfLite runtime and allow inference to continue with a BIG warning. * Fix handling of output tensors in the TfLiteExecutor. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: If99dab7f0ac068fe4d17f338306c7bc5b128250a
2023-12-13MLCE-1168 ExecuteNetwork option --visualize-optimized-model does not work ↵Tracy Narine
with "--tflite-executor parser" option * Allow serialize to dot for the parser delegate Signed-off-by: Tracy Narine <tracy.narine@arm.com> Change-Id: Id9edef143f0e0cc02dd7b1bfe87d36035bf44c6d
2023-12-13Removing unnecessary schema dependency from delegate unit tests.Colm Donelan
* All of the unit tests were including the TfL schema even though it is not used. This prevented building with delegate and not TfL parser. * Fixing some template compile errors that were introduced when FileComparisonExecutorTests.cpp was compiled without TfL parser. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I86742d57a6520ab6bd8336a683fee29de326fff5
2023-11-28Add Logging to ExecuteNetworkKevin May
* Adding clock times before and after inferences which SA team requested Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: Idc37085a25ce573cb74340f1be7313a616f561e8
2023-11-08IVGCVSW-7881 Add a script that evaluates the performance of a network.Colm Donelan
This script will attempt to execute a tflite model through all available backends reporting performance and accuracy checks. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: Id60626eddc48b48c497a7f52f3fbd10aa036d997
2023-10-26IVGCVSW-7722 Add ArmNNSettings to Opaque Delegate for ExecuteNetworkTeresa Charlin
Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: I0a111fa8ef62632c3c975537a727d75531a44b7a
2023-10-19IVGCVSW-7731 Add a test executables that verify released header files.Colm Donelan
Create a CMake project with executables to exercise the external interfaces of Arm NN. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I1e3a8ed726903aac5f52d78c55d2e1b1352c8362
2023-09-26GitHub #734 Add ExecuteNetwork support for S64 bit outputJohn Mcloughlin
* Add Signed 64 bit support for Output and Debug Layers Signed-off-by: John Mcloughlin <john.mcloughlin@arm.com> Change-Id: I991c2d5f1067b16d0fac362e7406305fbe90d034
2023-08-21IVGCVSW-6667 Update the Arm NN Execute Network app --helpTracy Narine
* Moved deprecated functionality to its own heading * Updated documentation for many of the parameters * Added information on execution time versus inference time Signed-off-by: Tracy Narine <tracy.narine@arm.com> Change-Id: If017e49e7f6c60a72fe948c1cfa1a6f6a5c4a692
2023-08-02IVGCVSW-7880 Add check for FP16 backend supportRyan OShea
* Check if preferred backends have FP16 support before enable fp16-turbo-mode * Unit tests * Replaced global gpuAccCapabilities with getter method construction * Replaced deprecated function call in SL shim Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Change-Id: If29b62b330ca8987de8acf6408db11daf25ca0b5
2023-07-14IVGCVSW-7830 Add backend optimizations to remove Reshapes where possibleMike Kelly
* Added optimization to remove reshapes for Neon and Ref Backends by using overridden TensorInfos * Added ability to delete Subgraphs during Optimization * Fixed naming error in NeonEndToEndTests and CLEndToEndTests * Added LayerNameAndTypeCheck for testing. * Fixed error where layers were not marked as altered when removed in CLBackend Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I1ac25cd4ec9821470d961831ae2c8d24882276cc
2023-07-04IVGCVSW-7862 Replacing use of std::filesystem with ghc::filesystemFrancis Murtagh
Even though we're using C++ 17 we still do a Debian buster build. This prevents using some new libraries. In this case std::filesystem. Change-Id: Icbdcac8a53d5931f25f8aa77c7422aa0b8ae94d4 Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2023-07-03Replacing use of std::filesystem with ghc::filesystem.Colm Donelan
Even though we're using C++ 17 we still do a Debian buster build. This prevents using some new libraries. In this case std::filesystem. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: Icdf3460cb5dd0e3ed2f07fccc5b89bd8975d488d
2023-07-03IVGCVSW-7773 Fix for ExecuteNetwork `--output-network-details-only` not ↵Declan-ARM
working with `-T delegate` flag * Removed original SetInternalProfilingParams * Added Undefined Profiling DetailsMethod for delegateOptions * Replaced with if / else block to handle DetailsOnly and DetailsWithEvents Signed-off-by: Declan-ARM <decmce01@arm.com> Change-Id: Id0c91892732c5c6b59696a43c6a73a22cbfffa09
2023-06-30IVGCVSW-7666 Add a FileComparisonExecutor to ExecuteNetwork.Colm Donelan
* Implement the "-C" command line option of executenetwork. * Add a FileComparisonExecutorFile which will read tensors from a previously written text file and compare them to the execution output. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I8380fd263028af13d65a67fb6afd89626d1b07b8
2023-06-26Fixing fault in ExeNet when a model file does not include an extension.Colm Donelan
If you pass a file name without an extension as the -m parameter to execute network it won't be able to determine the parser to use. This results in a segmentation fault. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I91821a5abd50b65b8d60409aa9a807013e0b0e6a
2023-06-08Fix issue with ExecuteNetwork when running with tflite executorNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Id404893c47d43dafa743f4b9524001072b426509
2023-05-09IVGCVSW-7626 Change sequence of Interpreter BuildingNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I3f0e224c90a4eea9945183028c9de1b61e75e510
2023-05-08IVGCVSW-7626 Add Execute Network for Opaque DelegateNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: Ibdded86713368ecfdf31c4118dfe8a3404d1e3b8
2023-04-26Update cxxopts from 3.0 to 3.1.1Jim Flynn
!android-nn-driver:9431 Signed-off-by: Jim Flynn <jim.flynn@arm.com> Change-Id: I58143445b5c5cf2aafd0838156c9543adce21e6a
2023-04-12IVGCVSW-7197 Implement Pimpl Idiom for OptimizerOptionsJohn Mcloughlin
Signed-off-by: John Mcloughlin <john.mcloughlin@arm.com> Change-Id: Id4bdc31e3e6f18ccaef232c29a2d2825c915b21c
2023-04-05IVGCVSW-6681 Improve error handling in TfLiteExecutor.Colm Donelan
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
2023-03-31Bugfix: Fix conversion issue in NetworkExecutionUtilsFrancis Murtagh
* conversion from ‘double’ to ‘float’ changes value Signed-off-by: Francis Murtagh <francis.murtagh@arm.com> Change-Id: Iebcc8adea54590fb6153db503e1dfccb082c9bd3
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-06Fixing compare output feature in ExecuteNetworkColm Donelan
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
2023-02-06IVGCVSW-7476 Remove ProfilingOptions from DelegateOptions.Colm Donelan
ProfilingOptions is not used in DelegateOptions. Instead the parameters are passed in through the RuntimeOptions. This is done in ExecuteNetwork and TfliteExecutor. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: Iaab3d4ef277c47e1ff82a51ba2648f5f51ec3e2c
2023-01-31Fix for ExecuteNetwork Delegate when output is booleanRyan OShea
* When the output of a network is a boolean from a comparison layer ExecuteNetwork was missing the data type when writing the output tensor Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Change-Id: Id9c1609462395a68e8c1842c77a4a033a10f74e8
2023-01-27IVGCVSW-7441 Checking for constant input tensors before populating.Colm Donelan
* When the tfLiteExecutor attempts to populate the input tensors it did not check whether the tensor was constant. This was causing segmentation faults. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I80a4cc788de4ffe08afb2df9185d04fcb8b27c3a
2023-01-25IVGCVSW-7441 Fixing null pointers in ExecuteNetwork.Colm Donelan
* Check if BuildExecutor returns null in ExecuteNetwork. * Check if tflite BuildFromFile returns null in TfliteExecutor. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I42b6e5f26dfd127dd16b6b322184900846317c41
2023-01-24IVGCVSW-7297 When creating multiple Executors only the lastMike Kelly
one works fine * All ArmNNExecutors now share a single IRuntime. * All armnn_delegates now share a single IRuntime. * Increased delegate major version. Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: I95cbdc32655ec0beb476dbb2d60f1a0209df8f04
2023-01-10Update --compare-output description in ExecuteNetwork parameters.Cathal Corbett
Signed-off-by: Cathal Corbett <cathal.corbett@arm.com> Change-Id: Ic6bbbaa04aabaa5c3fd525acd5121f07d3392120
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-12-20IVGCVSW-7409 GPU backend options not being passed from the delegate.Colm Donelan
Two problems here: * First the Delegate was using the parameter options after the execution of std::move on it. * In ExecuteNetworkParams 3 GPU backend options were instead being set as optimizer options. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I61c7fad8a5819a0a4aec0243899019a342c5cc5f
2022-12-13IVGCVSW-7365 Fix behaviour of --import-inputs-if-aligned in ExecuteNetworkMatthew Bentham
Move call to 'SetupInputAndOutputs' to after LoadedNetwork is available. Change-Id: I101e297d1d7b2517011d4ef3f1a4927566845474 Signed-off-by: Matthew Bentham <matthew.bentham@arm.com>
2022-12-12Updates following execution of Includewhatyouuse on armnn/include.Colm Donelan
This tool forces explicit includes of all dependencies and highlights unused dependencies. Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I92e449245246452a0227cbd13f9c082e2088bf8c
2022-12-05Fix build error due to missing includePablo Marquez Tello
Change-Id: I38fa4b49b0cdb506293c7b0e75146b56649839b8 Signed-off-by: Pablo Marquez Tello <pablo.tello@arm.com>
2022-11-30IVGCVSW-7220 Remove referencetests repo and testing of itKevin May
* Remove mentions of reference tests Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: Idd3c8b2e48f03531b1ec6cc67fd3bd32e50086c3
2022-11-16IVGCVSW-7214 Disable BF16-Turbo-Mode and remove conversion layersRyan OShea
- 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
2022-11-15Minor error formatting fixes.Colm Donelan
Signed-off-by: Colm Donelan <colm.donelan@arm.com> Change-Id: I17823fb8b6bbabc4da327187167ce9582ee29b32
2022-11-15IVGCVSW-7332 Fix Delegate Profiling in ExNet with multiple iterationsKevin May
Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: If837e4bec7940b53d18d0da32f3e736215dd2a03