aboutsummaryrefslogtreecommitdiff
path: root/tests/NetworkExecutionUtils
AgeCommit message (Collapse)Author
2024-06-12IVGCVSW-8289 Add Numpy Support to execute networkCathal Corbett
* Creates a numpy parser helper header * Adds ability to parse numpy file in PopulateTensorWithData * Reuse ExNet compare-output flag to compare against npy golden files. * Reuse ExNet write-outputs-to-file flag to write output to npy file. Signed-off-by: Cathal Corbett <cathal.corbett@arm.com> Signed-off-by: Ryan OShea <ryan.oshea3@arm.com> Change-Id: I52df822f72f6ce9d191ac4bd26ca5718ccaa7a4a
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-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-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
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-10-18ExecuteNetwork: Fix output format issue for int8 when using -wAdam Jalkemo
Change-Id: I594ded82493e9cc48cafa6f00d63769fefba5afe
2022-07-28Revert "Revert "IVGCVSW-6650 Refactor ExecuteNetwork""Teresa Charlin
This reverts commit 1a7f033768acb27da11503bd29abb468d2e77f9e. List of fixes to be able to add this code again: * "emplacing_back" the vector inputTensors into the vector m_InputTensorsVec outside the for loop * GetIOInfo() uses IOptimizedNetwork instead of INetwork, where the infered shapes are not saved * Add missing data type Signed32 to SetupInputsAndOutputs() * PrintOutputTensors() prints the actual output without dequantizing * Add profilingDetailsMethod as input in networkProperties in ArmNNExecutor constructor * Fix typos Change-Id: I91de166f87228282db3efa27431fe91458834442 Signed-off-by: Teresa Charlin <teresa.charlinreyes@arm.com> Change-Id: Ic6634d48892d11e5f146cdf285e1e333e93e9937 Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2022-07-08Revert "IVGCVSW-6650 Refactor ExecuteNetwork"Nikhil Raj Arm
This reverts commit 615e06f54a4c4139e81e289991ba4084aa2f69d3. Reason for revert: <Breaking nightlies and tests> Change-Id: I06a4a0119463188a653bb749033f78514645bd0c
2022-07-08IVGCVSW-6650 Refactor ExecuteNetworkFinn Williams
* Remove InferenceModel * Add automatic IO type, shape and name configuration * Depreciate various redundant options * Add internal output comparison Signed-off-by: Finn Williams <finn.williams@arm.com> Change-Id: I2eca248bc91e1655a99ed94990efb8059f541fa9
2021-11-03Revert "IVGCVSW-6359 Added support for Float16 (Half) to Execute Network"David Monahan
This reverts commit 2d9956162dd002a41f7fb4fa6753195d33524c7f. Reason for revert: After some discussion, this does technically implement Float16 support for ExecuteNetwork, but not in a way which matches most use cases and is likely to cause issues in the future. Reverting for now. Change-Id: I4ce6de6879216e694631f5dc68e46fb793fae0a9
2021-11-01IVGCVSW-6359 Added support for Float16 (Half) to Execute NetworkDavid Monahan
* Allows the user to specify float16 as a datatype * Does not contain support for float16 on the TfLiteDelegate via ExecuteNetwork Signed-off-by: David Monahan <David.Monahan@arm.com> Change-Id: Icba56feedab32662e2cf671cc46ada899cf40c6c
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-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-09-14IVGCVSW-6369 Fix ExecuteNetwork output failureJan Eilers
Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I01aa6ea4b21ad4504d6ae04850a2236588e5ddd3
2021-09-13Add 'do-not-print-output' option to ExNetJan Eilers
Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: I10fb010ee8d3f813d2264cefb526f352e30d7046
2021-07-26GitHub #557 wrong result in int8 modelexperimental/CustomAllocator3Mike Kelly
* Added support for qasymms8 (int8) to ImageTensorGenerator * Added qasymmu8 as alias for qasymm8 in ImageTensorGenerator * Added support for qasymms8 (int8) to ExecuteNetwork * Added qasymmu8 as alias for qasymm8 in ExecuteNetwork * Set tflite to be the default model format in ImageTensorGenerator as it's the only supported model format. Signed-off-by: Mike Kelly <mike.kelly@arm.com> Change-Id: Ieda7b78e668ea390e3565cd65a41fe0a9c8a5b83
2021-07-21NNXSW-3081 Move Filesystem.hpp and Threads.hpp to public includeRob Hughes
!android-nn-driver:5966 Change-Id: Ice0b4d2872bb0e09bfc0763034a206c3a8f24af4 Signed-off-by: Rob Hughes <robert.hughes@arm.com>
2021-04-27IVGCVSW-5721 Remove the Tensorflow Parser from ArmNNNikhil Raj
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: Ida37d3ee3a1af0c75aa905199bd861726c646846
2021-04-16IVGCVSW-5720 Remove the Caffe Parser from ArmNNNikhil Raj
Signed-off-by: Nikhil Raj <nikhil.raj@arm.com> Change-Id: Ib00be204f549efa9aa5971ecf65c2dec4a10b10f
2021-03-03IVGCVSW-5612 Fix tiny_wav2letter_relu_fixed_int8 delegate outputexperimental/abi-testsFinn Williams
* fix delegate perchannel quantization * change delegate to check reshape options before inputs * Add int8 "qsymms8" option to ExecuteNetwork * Add option to run ExecuteNetwork on tflite w/o delegate !referencetests:301301 Signed-off-by: Finn Williams <Finn.Williams@arm.com> Change-Id: If3e12599b17aff1199d7ab0a55e1c901e480083d
2020-11-20IVGCVSW-5559 Add int8_t to tflite delegate on ExecuteNetworkFinn Williams
Signed-off-by: Finn Williams <Finn.Williams@arm.com> Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: I56afc73d48848bc40842692831c05316484757a4
2020-10-29IVGCVSW-5468 Rewrite QuantizationDataSet.cpp to avoid use of CsvReaderJames Ward
* Remove armnnUtils/CsvReader and usage * Remove armnn/CsvReaderTest and usage * Replace functionality in QuantizationDataSet.cpp Signed-off-by: James Ward <james.ward@arm.com> Change-Id: I7213904482afa93ae6d607aa5e69117c8c34ea81
2020-10-20IVGCVSW-5284 Refactor ExecuteNetworkJan Eilers
* Removed boost program options and replaced it with cxxopts * Unified adding, parsing and validation of program options into the struct ProgramOptions * Program options are now parsed directly into ExecuteNetworkParams which can be passed directly to MainImpl * Split NetworkExecutionUtils into header and source * Removed RunTest * Removed RunCsvTest * Removed RunClTuning * Moved MainImpl back to ExecuteNetwork.cpp * Added additional util functions The functionality of ExecuteNetwork remains the same. Only cl tuning runs need to be started separately and there is no short option for fp16-turbo-mode because -h is reserved in cxxopts to print help messages Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Ib9689375c81e1a184c17bb3ea66c3550430bbe09
2020-09-30IVGCVSW-4519 Remove Boost Variant and apply_visitor variantJames Ward
* replace boost::variant with mapbox::util::variant * replace boost::apply_visitor with mapbox::util::apply_visitor * replace boost::get with mapbox::util::get Signed-off-by: James Ward <james.ward@arm.com> Change-Id: I38460cabbcd5e56d4d61151bfe3dcb5681ce696e
2020-09-15IVGCVSW-5317 'Add enable_fast_math Option to ExecuteNetwork'Sadik Armagan
Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I4eb3e27837aea926593d49f9ccea07bab8388d5b
2020-09-11IVGCVSW-5299 Remove some boost::numeric_cast from armnn/testsMatthew Sloyan
* Replaced with armnn/utility/NumericCast.hpp * Removed combinations without float implementation in NumericCast.hpp Signed-off-by: Matthew Sloyan <matthew.sloyan@arm.com> Change-Id: Ia4ec605f063cdb0071fff302ef48c610f9f9505e
2020-07-29IVGCVSW-4980 Introduce InferAndValidate option to ExecuteNetwork for parsersSadik Armagan
* Introduced infer-output-shape option to TfLiteParser in ExecuteNetwork app !armnn:3591 Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: I30bd5e51ac2b6759169e22a44586fd97986f2402
2020-06-03remove BOM from filesLaurent Carlier
Change-Id: Ia4b4bb3be0ed6e933c77d58f8e9879b1370e9537 Signed-off-by: Laurent Carlier <laurent.carlier@arm.com>
2020-06-02Fix a few build warnings:Rob Hughes
* Remove redundant asserts for unsigned ints being positive * Remove unneeded include of lightweight_test.hpp header * Remove unused exception variable names * Replace hardcoded 0.0f with T() for some template functions * Add a few static_casts Change-Id: I290b0433cf995f6d0199422eaa10f816e5fd8eb9 Signed-off-by: Robert Hughes <robert.hughes@arm.com>
2020-05-27Catch exceptions by const referencePavel Macenauer
Change-Id: I4b4d8ae419dfb8470e8937e75cd3bab85f03b935 Signed-off-by: Pavel Macenauer <pavel.macenauer@nxp.com>
2020-05-22Adding more performance metricsalered01
* Implemented CLTuning flow for ExecuteNetwork tests * Added --tuning-path to specify tuning file to use/create * Added --tuning-level to specify tuning level to use as well as enable extra tuning run to generate the tuning file * Fixed issue where TuningLevel was being parsed incorrectly * Added measurements for initialization, network parsing, network optimization, tuning, and shutdown * Added flag to control number of iterations inference is run for Signed-off-by: alered01 <Alex.Redshaw@arm.com> Change-Id: Ic739ff26e136e32aff9f0995217c1c3207008ca4
2020-04-20IVGCVSW-4513 Remove boost/algorithm/string *David Monahan
* Removed split, classification, trim, string, join, contains * Added StringUtils.hpp to replace the removed Boost String functionality Signed-off-by: David Monahan <david.monahan@arm.com> Change-Id: I8aa938dc3942cb65c512cccb2c069da66aa24668
2020-04-06IVGCVSW-4485 Remove Boost assertNarumol Prangnawarat
* Change boost assert to armnn assert * Change include file to armnn assert * Fix ARMNN_ASSERT_MSG issue with multiple conditions * Change BOOST_ASSERT to BOOST_TEST where appropriate * Remove unused include statements Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I5d0fa3a37b7c1c921216de68f0073aa34702c9ff
2020-03-24IVGCVSW-4521 Add bf16-turbo-mode option to ExecuteNetworkNarumol Prangnawarat
Signed-off-by: Narumol Prangnawarat <narumol.prangnawarat@arm.com> Change-Id: I57ec47adf98680254fa481fb91d5a98dea8f032e
2020-03-10IVGCVSW-4482 Remove boost::ignore_unusedJan Eilers
!referencetests:229377 Signed-off-by: Jan Eilers <jan.eilers@arm.com> Change-Id: Ia9b360b4a057fe7bbce5b268092627c09a0dba82
2020-02-20COMPMID-3062: Add ExecuteNetwork option to explicitly dequantize outputGeorgios Pinitas
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com> Change-Id: Ic7abe5dad700fbdc1b7cbab6936b52554f0a0360
2020-01-20IVGCVSW-4106 Network not failing when Inference time is greater than ↵Nikhil Raj
threshold time Signed-off-by: Nikhil Raj <nikraj01@e110586.galway.arm.com> Change-Id: I4e5f96cb3a843a4ae29bad539c0eed42282344a8
2020-01-13Rename quantized data types to remove ambiguity for signed/unsigned payloadsDerek Lamberti
!android-nn-driver:2572 Change-Id: I8fe52ceb09987b3d05c539409510f535165455cc Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-30IVGCVSW-4246 Clean build end-to-end tests with -WextraDerek Lamberti
Change-Id: Ia25f919e45a210e1e2d5d50b0c9098bf01d88013 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-05Replace boost logging with simple loggerDerek Lamberti
!referencetests:214319 * Reduces arm nn binary size ~15% * Also fixed test logging black hole issues Change-Id: Iba27db304d9a8088fa46aeb0b52225d93bb56bc8 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-03IVGCVSW-4206 Correctly pass execute network parameter.Derek Lamberti
Change-Id: I595b89dcb6419f7cb73cee51705b90f6eec7088b Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-12-02IVGCVSW-4206 Optionally parse unsupported ops in ExecuteNetworkDerek Lamberti
Change-Id: I593e2540bd870d70aabb2c959f4e63a899967269 Signed-off-by: Derek Lamberti <derek.lamberti@arm.com>
2019-10-28Fix ExecuteNetwork no longer printing out the inference results,Matteo Martincigh
breaking some of the nightly builds * The TensorPrinter must be called regardless of the value of the output tensor files, it will automatically handle an empty file path by only printing the results to the console * Code refactoring Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com> Change-Id: I548ec7cf6d51badf78643c9a6c1c56ea9200142b
2019-10-25IVGCVSW-4008 Add profiling mode to ExecuteNetworkAron Virginas-Tar
* Removed the requirement for specifying a data file for each input tensor * Added the possibility to generate dummy tensor data (filled with 0s) if no data files are specified by the user * Warn the user when they request to save the output to a file, but the input was generate, therefore rendering the output useless Signed-off-by: Aron Virginas-Tar <Aron.Virginas-Tar@arm.com> Change-Id: I8baed116dcd99fe380e419db322dc7e04ab1c653
2019-10-08IVGCVSW-3669 Fix bug parsing multiple InputShapes in ExecuteNetworkFrancis Murtagh
* Change shape separator from semicolon, a command separator, to colon. * Update ExecuteNetwork --help prompts. Change-Id: I6c6d18007cd219482d8187d69962944b833e302e Signed-off-by: Francis Murtagh <francis.murtagh@arm.com>
2019-09-23Replace uses of non-standard C++:Rob Hughes
* Variable-length array replaced with std::vector * "and" replaced with "&&" (OK, this one is standard but MSVC doesn't like it and it's inconsistent with the rest of the codebase) * Replace u_int8_t with uint8_t Change-Id: I7b968a2cfa85a5492a2a547364464c594efb067b Signed-off-by: Rob Hughes <robert.hughes@arm.com>
2019-09-04IVGCVBENCH-1337 Added additional layer parameters to dot file and -v optionAndre Ghattas
* Generic layer parameters now show up in dot file * Convolution layer parameters have also been added to dot file * ExecucteNetwork has an additional -v flag which generated dot file if there Change-Id: I210bb19b45384eb3639b7e488c7a89049fa6f18d Signed-off-by: Andre Ghattas <andre.ghattas@arm.com> Signed-off-by: Szilard Papp <szilard.papp@arm.com>
2019-09-02IVGCVSW-2945 ExecuteNetwork should have an option to save the output to a fileSadik Armagan
* Added "output-tensor-files,w" option to save output tensors to a file Signed-off-by: Sadik Armagan <sadik.armagan@arm.com> Change-Id: Ida457177c5cbd7dca228772405fd505d03b61bf9
2019-08-29Add a check for the number of output types to ExecuteNetworkMatteo Martincigh
* If the number of the declared output types does not match the number of outputs, throw an error (just like we do for the inputs) Change-Id: I1cb873bf443a31ecdbc11195462e9614ae3a6637 Signed-off-by: Matteo Martincigh <matteo.martincigh@arm.com>
2019-08-28IVGCVSW-3675 Add ExecuteNetwork option to print intermediate layersMatthew Jackson
Signed-off-by: Matthew Jackson <matthew.jackson@arm.com> Change-Id: Id7ab186ec607ff6e5ee6869c4ad562af4c40b97a