aboutsummaryrefslogtreecommitdiff
path: root/tests/framework
AgeCommit message (Collapse)Author
2018-11-02COMPMID-1631: Fixed test framework memory corruption.Pablo Tello
Change-Id: I2c4dcedcd3b56e41174eebbbacd47be4e968d34d Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/152767 Tested-by: bsgcomp <bsgcomp@arm.com> Reviewed-by: Vidhya Sudhan Loganathan <vidhyasudhan.loganathan@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-1622 : (Nightly) Seg fault on androidVidhya Sudhan Loganathan
call to print_cpu_info moved to main Change-Id: I6d82649964542df4e944bc79e4c16f0813976295 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/152695 Tested-by: bsgcomp <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com>
2018-11-02COMPMID-1622 : (Nightly) Seg fault on androidVidhya Sudhan Loganathan
conditionally compile the std::cout that was causing the fault Change-Id: I7f50151ab88f19ed6eec1be11ca975614653e359 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/151762 Reviewed-by: Pablo Tello <pablo.tello@arm.com> Tested-by: bsgcomp <bsgcomp@arm.com>
2018-11-02COMPMID-162: output cpus list and capabilities in validation suite.Pablo Tello
Change-Id: I6f71f2da851454e8fbbdfc9223592dea9ad03bac Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/151014 Tested-by: bsgcomp <bsgcomp@arm.com> Reviewed-by: Giuseppe Rossini <giuseppe.rossini@arm.com> Reviewed-by: Isabella Gottardi <isabella.gottardi@arm.com>
2018-11-02COMPMID-1563: Added a tag to ISCheduler::run_workloads to identify workloadsAnthony Barbier
Change-Id: Ieac59e3ccf47feab8f88c65200eb8a81b2eb4196 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/147728 Tested-by: bsgcomp <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-1541: Remove dependency on tests/ headers in utils/TypePrinter.hAnthony Barbier
Change-Id: I04c11c3b8e215e5f116f188453cfa9211277be4a Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/145712 Reviewed-by: Michele DiGiorgio <michele.digiorgio@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1246: Check OpenCL is available before re-creating the CL Context ↵Anthony Barbier
and Queue Change-Id: I0b0be0a86d43d87ea8225f6d5e5b02b0f80e6e3a Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/145034 Reviewed-by: Michele DiGiorgio <michele.digiorgio@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1478: Stop relying on static default OpenCL objects in cl2.hppAnthony Barbier
This causes problems when ACL is used as a shared library on Android. Fixes some problems related to creation / destruction order between the Graph's CL backend and core / runtime Change-Id: I716d63fd42f4586df1ffbb6fa97e4db06d3a781b Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/143228 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Michele DiGiorgio <michele.digiorgio@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
2018-11-02COMPMID-1398: Removed --threads from CommonOptionsAnthony Barbier
Otherwise --threads appear twice for benchmark_graph_* tests Change-Id: I4f5454f6a2fda2558386290583a0ab84cd4666bb Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/139827 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com>
2018-11-02COMPMID-1310: Create graph validation executables.Georgios Pinitas
Change-Id: I9e0b57b1b83fe5a95777cdaeddba6ecef650bafc Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/138697 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1379: Created WindowIterator and TensorAccessorAnthony Barbier
- WindowIterator: used to iterate over arbitrary positions of a window. (More flexible than execute_window_loop which only can iterate over entire dimensions) - TensorAccessor: RSH's code uses pointers to specialised types and strides in element sizes, this helps interfacing with their code. Change-Id: I8ded8758d345668804873409f949b8cec694d289 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/139082 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-1180: Add support for bucket multi-threading (Part2)Anthony Barbier
- Introduced some Hints allowing the function to set its favourite splitting method for a given workload - Implemented the bucket split (Disabled by default) Change-Id: I3a48dfb0bd0ec8b69a44d9c4a4c77ad3f6dc9827 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/133079 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
2018-11-02COMPMID-1180: Add support for bucket multi-threading (Part 1)Anthony Barbier
- Add an entry point to allow the user to parallelise an arbitrary queue of workloads (Will be used to interleave GEMM / BufferManager) - Added a ThreadFeeder which acts as a thread-safe work distributor Change-Id: I3a84fb7446c453cfcd337e21338c2ccf9f29f7b3 Note: This patch doesn't introduce any change in the default strategy, therefore it shouldn't have any impact on the performance Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/133058 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-1182: printf doesn't workGeorgios Pinitas
Change-Id: I013d57f6e2becbd6d2d7700ce5fbbeca670443c4 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/133735 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com>
2018-11-02COMPMID-1119 - Bugfix SIGKILLGian Marco Iodice
The problem seems caused by the OpenCL driver that does not release the allocated memory. In order to solve this problem the OpenCL context is destroyed every 5000 tests to force the release of the memory Change-Id: I2135f49d7ff92c7761ec8dba6819db1590e19691 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131459 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-959: Only intercept clEnqueueNDRangeKernel when the timer is enabledAnthony Barbier
Otherwise we'll start intercepting the cl_tuner run, which we don't want Change-Id: Ib3d835a02a6cec9617a715bfbeaed506792a00fc Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131478 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-997: Add support for node's name in GraphAPI.Georgios Pinitas
Change-Id: I0ca02e42807c1ad9afeffb7202a3556feb11442f Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/129701 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-1077 Fixed SVM memory tracking instrumentAnthony Barbier
Change-Id: Iae8f29eb38efce686cd032ab779200d3b4dda4c5 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/129227 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1077 Add OpenCL Memory Usage instrumentAnthony Barbier
Change-Id: Ic5a24f22bec9d6ca71486097f6ad70fb0d83da2b Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/128674 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1081: Introduced test-wide instrumentsAnthony Barbier
Change-Id: I5831241f3fc503717cc51136453c2bf96d4b420b Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/128484 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-959 Refactor OpenCL interceptors to use lambda functionsAnthony Barbier
Change-Id: I29b73a311d7278255b77524f2a5eaaa4dccab711 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/128392 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1008: Fix Doxygen issuesAlex Gilday
Change-Id: Ie73d8771f85d1f5b059f3a56f1bbd73c98e94a38 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/124723 Reviewed-by: Michalis Spyrou <michalis.spyrou@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-793 : Add graph intermediate representationGeorgios Pinitas
Change-Id: Ic1685de4e19e0ac79669ef2da64e1dc96c7ea0bf Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/115248 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-887 Valgrind invalid read in print_measurementsMichalis Spyrou
Change-Id: I595d9ac7a616b3ab21ccc889251d0895c9ac9fb0 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/119099 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02IVGCVSW-863 Broadcast support in CL/NEON Arithmetic AddDiego Lopez Recas
Also, added instrumentation to support generic tensor broadcasting for NEON and CL backends. Change-Id: I1bc5747a286e1a4b464c209067581e103d473b9a Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/114201 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-863: Only output (end-start) for OpenCL timersAnthony Barbier
Currently we output an array of timestamps: queued, submitted, start, end This patch instead only output end-start (i.e the time it took to execute the kernel on the GPU) Change-Id: Ic3c2b68128f6acd6bb018b7b3ead0b69dd5aca59 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/117865 Reviewed-by: Pablo Tello <pablo.tello@arm.com> Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Kevin Petit <kevin.petit@arm.com>
2018-11-02COMPMID-863: Remove some of the post-processing from the JSON backendAnthony Barbier
Refactored the console printer too (So that we can re-use the code if needed) Change-Id: I16a0f70104f82f07cd59900b383038fa5a76e1bc Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/117858 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com>
2018-11-02COMPMID-765: Fixed output accessor in LeNet example, and disabled colors ↵Anthony Barbier
when not running in a terminal Change-Id: I4ec90803c5dc41b0cee05c36113ae3f189564d58 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/117831 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-765: Added missing <errno.h> includeAnthony Barbier
Change-Id: I25424481ddbbeb43f940cf51cef791e4fd83ea92 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/117676 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-798 Add instrumentation to NEON kernelsAnthony Barbier
Change-Id: I9dbb090cac731d68bd98a7d1c8ab0e1cb0a5c911 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/116746 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com> Tested-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02IVGCVSW-847 Fix {NEON/CL}PoolingLayerKernel configDiego Lopez Recas
Also, add validation test that hits the discovered failure for CL. Change-Id: I5573e0a3f169b85d5fb7299e7c48d74be7165208 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/112717 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-771 Allow examples to be profiledAnthony Barbier
Change-Id: I180281e796e1670b9ad391d82d66ecde0119ef78 Note: this is for internal use only which is why I think the hackiness of RunExample.cpp is acceptable. Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/115154 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02APPBROWSER-359: Sync tensor in GC benchmark testsJoel Liang
Change-Id: I22c1aa92e70d6143bbcec90e9e7de9f1ce1c1e55 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/114635 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com>
2018-11-02COMPMID-556 Run format_code.py on HWC headersAnthony Barbier
Change-Id: Ieeaaa262843ce608ac89613fb5bb5260b2847476 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/114543 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-556: Preserve case-sensitivity of positional argumentsGeorgios Pinitas
Change-Id: I14ab1c4c0a492fe89ccd9d1f7adbf97f43e3149e Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/111513 Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02APPBROWSER-313: medium value and relative standard deviationJoel Liang
Calculate the median value and relative standard deviation for better performance comparison. Change-Id: I433baa0b030f988d661777b2cbf8bf10c70f39d4 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/111638 Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-694: merge opencl_timer flag with the opencl flagAnthony Barbier
Is there any reason why we might have OpenCL enabled but wouldn't want to make the opencl_timer instrument available ? Change-Id: I946d643028fc394a607478415e4f84c4e8fa5bc4 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/110466 Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com <bsgcomp@arm.com> Reviewed-by: Kevin Petit <kevin.petit@arm.com> Reviewed-by: Ioan-Cristian Szabo <ioan-cristian.szabo@arm.com> Reviewed-by: Michalis Spyrou <michalis.spyrou@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Giorgio Arena <giorgio.arena@arm.com>
2018-11-02COMPMID-556 Print tests list using printers rather than coutAnthony Barbier
Will help with scripting to split the tests to run across several boards Change-Id: I32806c3cd03cd1b4af1865cd4fdb0422d609eff0 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/110535 Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
2018-11-02COMPMID-694: Fix condition which decides whether or not to profile a runAnthony Barbier
Change-Id: I4853a4d83a13b162d5759434a4e800c8f9e05cce Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/110108 Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-622 Let the user choose the units for the instrumentsGiorgio Arena
Change-Id: Ic6ac4cd6df6970593a5e2e6310b6d61951c88898 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/93887 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-556: Don't measure performance for the first runAnthony Barbier
This messes up badly the opencl_timer if we measure the first run and are using a CLTuner at the same time. Basically all the tuner combinations appear in the JSON file and this makes it really hard to post process Change-Id: I59377eb752ca8ddc95b884ab04b1ef3f65389931 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/95860 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-11-02COMPMID-631: Merge branches/gles_compute branchAnthony Barbier
Last commit: commit b25c5f68042b0c81bf611d59a1bb8535e1c42497 Author: Xinghang Zhou <xinghang.zhou@arm.com> Date: Wed Oct 25 18:48:10 2017 +0800 Synced validation's tolerances of GCSoftmax from cl side Change-Id: Ibe72054205c1c8721845d679a31af7ed0a7c5cf6 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/93283 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-11-02COMPMID-663: Fixed JSON writer for raw_dataAnthony Barbier
Quotes were missing around the JSON strings Change-Id: I3257721f76215a5c900428c453a843090d12a596 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/95314 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-11-02COMPMID-556: When an EnumListOption contains some invalid values: still keep ↵Anthony Barbier
the valid ones Change-Id: I4f5acc9af09587f0ec46482f6aea737fa42f35fc Reviewed-on: http://mpd-gerrit.cambridge.arm.com/95186 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-663 Adding instrument to return timestamps of clGetEventProfilingInfoAnthony Barbier
Change-Id: I1037054615593205f07e25fb9b16fecd13407c2c Reviewed-on: http://mpd-gerrit.cambridge.arm.com/95142 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-663: Reworked / cleaned up instuments' measurementsAnthony Barbier
Everything used to be stored as double which led to some numbers appearing in scientific notation and some counters values getting corrupted. Now measurements can be stored as either floating point or integer values. Added support for raw_data in order to output more detailed information to the JSON files (Will make use of that in the OpenCL timer instrument) Change-Id: Ie83776b347a764c8bf45b47d7d9d7bec02b04257 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/95035 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-621 Support several printers for testsGiorgio Arena
Change-Id: I2e8e98aab1ec14c2a1bf17db2facc908b241b783 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/93308 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-623 Make command line options case insensitiveGiorgio Arena
Change-Id: I91093ce5d5c8643ada4ecc12b86f5f4eda9ba234 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/93306 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-417: Port GEMMLowp test to the new validation framework.Pablo Tello
Change-Id: I7bbe0f19a7255a37a6b0ce8c4d0bb57cf21c4bfb Reviewed-on: http://mpd-gerrit.cambridge.arm.com/89677 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-11-02COMPMID-417 Minor documentation fixes and error handling in instrumentsAnthony Barbier
Fixed some Doxygen issues in the introduction and tests sections Switched MaliCounter to use ARM_COMPUTE_ERROR in order to get more context in case of failure Switched to use ARM_COMPUTE_ERROR instead of ERROR_ON in PMU and MaliCounter so that checks work in release mode too. (As these checks are to detect platform issues rather than programming errors) Change-Id: Ibbefa5a87d93c5c3aa5e190680052e4e99987dfe Reviewed-on: http://mpd-gerrit.cambridge.arm.com/89662 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>