aboutsummaryrefslogtreecommitdiff
path: root/examples
AgeCommit message (Collapse)Author
2018-11-02COMPMID-873: Integrate RSH NEON Depthwise Convolution routineGeorgios Pinitas
Change-Id: Ida1e9a836bc518bfe5563e16bf7f92bde5fc13f7 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/118472 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com>
2018-11-02COMPMID-895 - Optimizing CLDepthwiseConvolution3x3KernelGian Marco
This patch brings the MACs utilisation up to 25 % when both stride_x and stride_y are equal to 1 Performance reported in the following confluence page: https://confluence.arm.com/display/MLENG/Depthwise+convolution+3x3+FP32+performance%3A+ACL+18.02 Change-Id: Ida1b64be9a88805902a3d90194559b58eb1224a3 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/119068 Reviewed-by: Michalis Spyrou <michalis.spyrou@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-891 - Use OpenCL timer in CLTunerGian Marco
Change-Id: I84a914c13b162c4f74321c9cafc30a18ad4ebbdb Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/118797 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-765 - Used GEMM instead of Direct into the GoogleNet graphGian Marco
example Change-Id: Ic639d51fb5dd4f78912a9b11abc7df79d205a22b Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/118843 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-889 - Implement Squeezenet 1.1 as a graph exampleIsabella Gottardi
Change-Id: I12d4af007c123b19925ceb5e3c84285e096bc13b Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/118718 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-748 - Integrating optimized SGEMM for bifrostGian Marco
This patch introduces a new GEMM capable to improve the mac utilisation of 10% compared to the GEMM without reshape. However this implementation is not faster in all cases as we need to take into account the time for reshaping the matrices. For this reason an heuristic solution to select the optimal GEMM to use has been added to the function. More information about the heuristic implementation can be found at COMPMID-852. With this new patch, GoogleNet, MobileNet, VGG16 and SqueezeNet can improved the performance of 1.5x. More information about the performance uplift can be found here: https://confluence.arm.com/display/MLENG/GEMM+FP32+performance%3A+ACL+18.02 Change-Id: I024563c06b9aed02a211a974e452bae5c233b04c Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/117140 Reviewed-by: Pablo Tello <pablo.tello@arm.com> Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@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-847: Add MobileNet_v1_0.75_160.Georgios Pinitas
Change-Id: Ib21de61fe39d2768638af11c067dfc7bcf63aae2 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/117112 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Michalis Spyrou <michalis.spyrou@arm.com>
2018-11-02COMPMID-674 - Create Google InceptionV3 exampleGeorgios Pinitas
Change-Id: I389e0d4104b7dde60b7cdd612a83f3328517e44c Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/115804 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-752 Creating an example for QASYMM8 MobileNetGiorgio Arena
Change-Id: Ic76b3b6adaff8c84ba4d2ca5283d9291c69344f0 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/114466 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-782 Port examples to the new formatMichalis Spyrou
Change-Id: Ib178a97c080ff650094d02ee49e2a0aa22376dd0 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/115717 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@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-02COMPMID-767 : Propagate hints to subgraph.Georgios Pinitas
-Propagates hints to subgraph. -Fixes dispatching of apropriate optimized DepthwiseConvolution kernel for OpenCL backend. NEON backend is altered to default to the generic case until COMPMID-769 is addressed. Change-Id: I544f05cd99a9ac253f1b19aa4e4bb222b8fdd087 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/114781 Reviewed-by: Pablo Tello <pablo.tello@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02APPBROWSER-230, APPBROWSER-300: Rename GCScheduler enqueue to dispatch, sync ↵Joel Liang
to memory_barrier Also fix the synchronisation issues between different kernels. Change-Id: Ib59d83ae8d5cc8b0bdf13e6f4958edccdab91ca4 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/114594 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02APPBROWSER-347: Add GCDirectConvolution example.Frank Lei
Change-Id: Ic59b2d852d59abb3d149e29760a1e16978d41bdc Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/114593 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Joel Liang <joel.liang@arm.com> Reviewed-by: Ioan-Cristian Szabo <ioan-cristian.szabo@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-557 Added some GLES documentation and rework following OOB testingAnthony Barbier
Change-Id: I56333ed23d30c5ec3094f64b78a023589064fe06 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/113375 Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com <bsgcomp@arm.com> Reviewed-by: Jim He <jim.he@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-556: Force inclusion of all arm_compute_graph symbolsGeorgios Pinitas
Symbols from translation units of arm_compute_graph were stripped during static linkage. Forces to include all symbols of arm_compute_graph. Change-Id: Ib66f513792c8796fca10f8deaca887db474f2bed Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/113187 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-556 - Fix examplesGian Marco
- Fixed data type issue in cl_sgemm - Added support for NEON and OpenCL targets in graph examples. Before we could run only OpenCL target - Add auto_init() in NEDepthwiseVectorToTensorKernel Change-Id: I4410ce6f4992b2375b980634fe55f1083cf3c471 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/112850 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com <bsgcomp@arm.com>
2018-11-02COMPMID-556: Revert COMPMID-652Georgios Pinitas
Revert back to static linkage for android as dynamic linkage causes error within libc++ Change-Id: I448dd5ff4e527b81d702e331bd070101431fb7de Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/111995 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: BSG Visual Compute Jenkins server to access repositories on http://mpd-gerrit.cambridge.arm.com <bsgcomp@arm.com>
2018-11-02COMPMID-556 - Fix SGEMM exampleGian Marco
- alpha and beta were integer values whilst should be float. - Replaced CLImage with CLTensor - Replaced Format with DataType Change-Id: I19f81b52d2eab8976be689b601d8e8e2bedfc6aa Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/111725 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-02COMPIMID-553: MobileNet use case.Georgios Pinitas
Change-Id: I1181abbd5785065f3d57e91844376a4b110938a9 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/110701 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-02COMPMID-652 - Graph examples shouldn't need to link against OpenCLIsabella Gottardi
- Added --no-allow-shlib-undefined to library builds to make sure we don't leave any unresolved symbol - Added --allow-shlib-undefined to the graph examples build lines so that it doesn't matter whether or not OpenCL is supported by the Graph librarylibrary - Don't link tests statically anymore on Android (This was probably required in the past because we were duplicating symbols in the core and runtime libraries, but it doesn't seem to be an issue anymore) - Updated Doxygen accordingly Change-Id: I9905f388e0838bc8e3369de52838bf980b992ead Reviewed-on: http://mpd-gerrit.cambridge.arm.com/95172 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-671: Add global pooling layer support.Georgios Pinitas
Change-Id: Iead7497cc03e1e7bde440d2965a7bf54cbfa88bf Reviewed-on: http://mpd-gerrit.cambridge.arm.com/95579 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Joel Liang <joel.liang@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@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-556 - Add VGG16 graph sample codeGian Marco Iodice
Change-Id: I9440581e387ac5763b72444130c617424b14e1aa Reviewed-on: http://mpd-gerrit.cambridge.arm.com/91424 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-656 - Create VGG-19 exampleIsabella Gottardi
Change-Id: Ie26904a3b232ed614a3a063f7deb24995249e820 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/94657 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
2018-11-02COMPMID-657 - Add PPMAccessor and TopNPredictionsAccessor to SqueezeNetIsabella Gottardi
Change-Id: I8baaee68b82e200a4829c3fc6c60dd211c06e14f Reviewed-on: http://mpd-gerrit.cambridge.arm.com/94534 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-657 - Add PPMAccessor and TopNPredictionsAccessor to GoogleNetIsabella Gottardi
Change-Id: Ib6f2f9e73043d2c59b2698c243fb1a9f51c526e9 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/94363 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
2018-11-02COMPMID-617: Adds validation to CLPoolingLayerGeorgios Pinitas
Change-Id: Ied405a9c0e9746598d03ac6a944ad87e9b6494eb Reviewed-on: http://mpd-gerrit.cambridge.arm.com/93680 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-627 Create CL SGEMM exampleGiorgio Arena
Change-Id: I17478202348d34716d00c78e3cc21254c76b32e1 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/93304 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-639 - Add PPMAccessor and TopNPredictionsAccessor in graph_utilsGian Marco
Change-Id: I40c3e2dfcde10c65ed9c86f9283a53f9e679d4fa Reviewed-on: http://mpd-gerrit.cambridge.arm.com/92437 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-11-02COMPMID-638 - Fix Logger in Squeezenet Graph exampleIsabella Gottardi
Change-Id: I5f35dbc31ddf821d777c8d8867d25f05743c73a5 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/92411 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-11-02COMPMID-619: Logging interfaceGeorgios Pinitas
Change-Id: I73d1433ee7a682aeabb7540aa2ea1f6564f90aae Reviewed-on: http://mpd-gerrit.cambridge.arm.com/91775 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-553: Add squeezenet exampleGeorgios Pinitas
Change-Id: Id233f0c1c329ee0d5ee93166d4aa0718f7d629b7 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/92337 Reviewed-by: Michalis Spyrou <michalis.spyrou@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-550: Adds support for branches.Georgios Pinitas
Change-Id: I778007c9221ce3156400284c4039b90245eb2b7f Reviewed-on: http://mpd-gerrit.cambridge.arm.com/90043 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-556 - Added cartoon effect sample codeGian Marco Iodice
Change-Id: I7eb2463ab15425ef5681c2c871118964bcfd2179 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/91356 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-549 Create a Logger for GraphAPIMichalis Spyrou
Change-Id: If912d8232e12cd496923d55d386898450dac09e2 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/89897 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-601: Add GraphContextGeorgios Pinitas
GraphContext hold all the information about the hints that need to be passed in the nodes. As these might expand, it serves as a centralized class for such information. Change-Id: I0b5527630fb97cc5fa500db0bac8307ff2ea36e6 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/90300 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-417: Add grouping in convolution layerGeorgios Pinitas
-Adds grouping support in convolution layer -Adds Normalization layer node in graph -Adds alexnet example -Fixes FullyConnectedLayer output autoconfigure (works only for 1d batch space) Change-Id: I5bd75f9a8b08cfd68f7c34745150266c2bc4221f Reviewed-on: http://mpd-gerrit.cambridge.arm.com/89518 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-417 Updated build system to not combined objects of the different ↵Anthony Barbier
levels of library Until now we had: core = core_obj arm_compute = core_obj + arm_compute_obj graph = core_obj + arm_compute_obj + graph_obj But if an application link against more than one of these libraries then bad things happen. Added version strings in the runtime library too (As it used to only be in Core objects) Updated doxygen for how to compile the examples Change-Id: I7aad6ecf75cfa8dca59f2ea093e13fb0314a3eb4 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/89743 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-11-02COMPMID-417 - Fix graph_letnet.cpp exampleGian Marco Iodice
In case the library has been built just for NEON, we should not run the example Change-Id: I99f8d3efd20276dfeb73ca8362872111be1b1fd7 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/89682 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-11-02COMPMID-417 - Added support for memory manager in neon_cnn exampleGian Marco Iodice
Change-Id: I3bd91a9f234b8b42a96454c0d2e45f6098c543a5 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/89481 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-11-02COMPMID-417: Doxygen update and removed unnecessary TensorInfo from graph ↵Anthony Barbier
example Change-Id: I31839993bd75789566045c0db53dbf6dc3ae14e9 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/89202 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-363 Add Graph library supportAnthony Barbier
Change-Id: Ie841419bf65d0e06bdfe0bdd2d8d4e0bb3631e54 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/87931 Reviewed-by: Pablo Tello <pablo.tello@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-11-02COMPMID-514 (3RDPARTY_UPDATE)(DATA_UPDATE) Add support to load .npy dataSiCong Li
* Add tensorflow_data_extractor script. * Incorporate 3rdparty npy reader libnpy. * Port AlexNet system test to validation_new. * Port LeNet5 system test to validation_new. * Update 3rdparty/ and data/ submodules. Change-Id: I156d060fe9185cd8db810b34bf524cbf5cb34f61 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/84914 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-09-17COMPMID-415 Fix issue with OpenCL examplesAnthony Barbier
Change-Id: Ie4797e88fd2ad38f30cb69651ed37481b835fae8 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/80781 Reviewed-by: Moritz Pflanzer <moritz.pflanzer@arm.com> Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com>
2018-09-17COMPMID-417: Fix neon_cnn example.Georgios Pinitas
Add proper stride and paddding info to avoid incorrect tensor shapes. Change-Id: Ib906e43cf4ef09364acfb03201e765642dbc25af Reviewed-on: http://mpd-gerrit.cambridge.arm.com/79555 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-09-17COMPMID-345: Updated scons scripts to link computer_vision statically ↵Pablo Tello
against libgcc, libstdc++ and computer_vision. This is needed to run 'computer_vision' on the ARM 8.2-a + FP16 Fast model. Change-Id: I66d6427e4d4117b7995c35ec9df1dea5b3f22205 Reviewed-on: http://mpd-gerrit.cambridge.arm.com/78429 Tested-by: Kaizen <jeremy.johnson+kaizengerrit@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-09-17COMPMID-344 Updated doxygenAnthony Barbier
Change-Id: I32f7b84daa560e460b77216add529c8fa8b327ae