aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2018-11-02COMPMID-1199: Fixed mismatches in CLColorConvert.Pablo Tello
Mismatches caused by the CL kernel computing the green value in a different way than in NEON and C++. Luminance values must be added after multiplying the input UV values with the coefficients and not before. Change-Id: I359573a98cf12f3be5c3437c28822175a5703dbb Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/134158 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-1143 - Excessive padding in CLReductionOperationKernel when ↵Michalis Spyrou
configuring window Now max padding is equal to 15 instead of 127. If input width is less than 128 we decrease the number of threads in the WG. Change-Id: I5ff0b6fd8cb46143ba49e745ec9ad01f691bdd80 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/134152 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-799 - Use new OpenCL 8-bit dot product instructionMichalis Spyrou
Change-Id: I03d6c6db13bcb565f117725bdab2b68c89a49e21 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/122185 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
2018-11-02COMPMID-1251 - Update GEMM's heuristic selection on OpenCLGian Marco Iodice
Change-Id: I915461d3216ee8b181a592a89143ee8c6bb25661 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/134054 Reviewed-by: Pablo Tello <pablo.tello@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1209: Enable memory manager for the GEMM workspace bufferGeorgios Pinitas
Change-Id: I125660d412945aa152cb76c78280ca0d52264b86 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/133372 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-813 Add NHWC data format support for CL scaleMichalis Spyrou
Change-Id: Ie218447c4f3f94a37b5dd2d3b33488c7f5869adf Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/128520 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@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-1176: Adds nodes to the graph.Georgios Pinitas
Nodes added: -ChannelShuffle -Resize -Deconvolution -Dummy (used for performance analysis and debugging) Change-Id: Iad19960cbbce6e25532f77bfd34b2292c0ca9781 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131672 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-568: Implement Canny edge function for CL/NEONAbe Mbise
Change-Id: Ic5f197463f962bac4b23663bcef7ac744be6fc2a Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/114250 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1083 : Compute library should be made usable on non-ARM platformsVidhya Sudhan Loganathan
Added * Compile time switches for kernels using FP16 extensions * Validation for support of atomics extension Change-Id: Ia88e601db054ff35f1508988b5e322bd27511ac5 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/133216 Reviewed-by: Pablo Tello <pablo.tello@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-655 : Check FP16 is supported by the GPUVidhya Sudhan Loganathan
Change-Id: I507b04680a4e88426b682bd0be03bccb560ec78d Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/132589 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1168: enabling memory manager for _gemm_output gives wrong resultsGeorgios Pinitas
Change-Id: I96fbca08c2ad3a7415d1578fe7ec56f8a6069783 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131946 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com>
2018-11-02COMPMID-959: Fix deconvolution window.Georgios Pinitas
Change-Id: I791855edf6f821381ecb8ff0652fb14a5810d9d7 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131912 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1038: stoi and stoul cleanup.Pablo Tello
Change-Id: I0d981a06655cdd86c71fddbd07303d781577d0fd Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/132620 Reviewed-by: Giorgio Arena <giorgio.arena@arm.com> Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-566: Implement reference and CL/NEON validation for ColorConvert ↵Sanghoon Lee
(part 1) - Image to MultiImage will be in part 2 Change-Id: Id2f22c39fb41a78a360d20d2c3bdecd57cdfd152 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/128321 Reviewed-by: Pablo Tello <pablo.tello@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1083 : Compute library should be made usable on non-ARM platformsVidhya Sudhan Loganathan
Change-Id: I717ec4d0e483966c5de0148206b9eaabe81b9179 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/132417 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1176: Add FP16 support in CLDeconvolutionLayer.Georgios Pinitas
Change-Id: Ic82ca002220fa31d8618a55084ff1dfc2585bea7 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131944 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Vidhya Sudhan Loganathan <vidhyasudhan.loganathan@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1177: Improved native GEMM.David Mansell
Improve the native GEMM so it can cope with any value for M. Also change the selection code so that the native GEMM is selected if M is small and nmulti is large - Winograd needs GEMMs like this and they don't thread properly with the blocked GEMM. (also rename gemm_batched.hpp back to gemv_batched.hpp) Change-Id: I736c33373ada562cbc0c00540520a58103faa9d5 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131739 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1173: Clang-tidy issues.Georgios Pinitas
Change-Id: I1e0fd08f1053678cec696f20fd2f3a68dd5f1deb Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131423 Reviewed-by: Michele DiGiorgio <michele.digiorgio@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1163: NEON Scale NHWC failuresGeorgios Pinitas
Change-Id: Ice620385ce787b568b38fcbdddc94ef385396141 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131355 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-959: Fix CLChannelShuffleMichele Di Giorgio
Change-Id: I1ea4db4e1ba37a736445ba991eeb08c247a6a61e Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131393 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-959 - Fix Validate in Convolution LayerIsabella Gottardi
Change-Id: I6736ba4486df5ab10685ce17d41147359a4f3e80 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131091 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1035 - Add ResneXt50 as a graph exampleIsabella Gottardi
Change-Id: I42f0e7dab38e45b5eecfe6858eaecee8939c8585 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/129291 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-993 Implement CL LSTM functionMichalis Spyrou
Change-Id: Iee4ad387c41dd8ccfe31b3044d797f2d7448e552 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/126655 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1106 Add fast math support in NEWinogradConvolutionLayerGiorgio Arena
Change-Id: I5fcbbb3b6f22204f0aaebbc319dfdf03593577e8 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/130067 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
2018-11-02COMPMID-814: Add validate method to scale.Georgios Pinitas
Change-Id: I5004c79ac7b10f988f25e14847f1ea2be01629da Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131143 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1166: Fixed alpha/beta mixup for some merges.David Mansell
The default templated merge, and the specialised S8 12x8 merge, were using alpha and beta the wrong way round. Fixed. Change-Id: Ie559b665edf1eb012e8cb54ea0bca31612bcc072 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131309 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1044: Optimizing GCGEMM - Support for not reshaped GEMM on GLESMichele Di Giorgio
Change-Id: I22fe80393ec70e4501a4f9f9cad14014029d035d Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/129134 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
2018-11-02COMPMID-948: Remove unused code in CLReductionOperationKernelJohn Richardson
Remove redudant code left over from validation method refactoring. Update output shapes in CL/ReductionOperation Validate test suite. Change-Id: Ica846dd7f65380fa21708472e10b5bc609a32027 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131207 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Pablo Tello <pablo.tello@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1137 OpenCL concatenate widthMichalis Spyrou
Change-Id: I40faba421281b1cf080fa6a825d04a4366cdaeb0 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/130700 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-792 - Re-enabled Winograd on NEON in all graph examples.Gian Marco Iodice
Since now the input transform can be multi-threaded, I re-ebaled Winograd in all graph examples Change-Id: I39ef78243bb47fdae135e18dcae2102af0675b3b Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131048 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1102 : Enable the use of 4x4 tile sizes in neon implementation of ↵Vidhya Sudhan Loganathan
winograd conv. Change-Id: Ibd2f2c6680b647a066255ea77d4a2a172ef76aa3 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/130418 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-959: Fixed typo in CLPermute::validate()Anthony Barbier
Change-Id: I54e58cb0b0cdd90bbb8dc2be4f06b76af88dc26d Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131054 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Isabella Gottardi <isabella.gottardi@arm.com>
2018-11-02COMPMID-948: Add validation to NEL2NormalizeLayerJohn Richardson
Change-Id: I0cfea24884066412c2f13d9acdb72ddbccac7545 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/130407 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1152 OCLGrind: invalid read in pooling_layer_MxN_nhwcMichalis Spyrou
Change-Id: I6767a147e532d944d4e8dac3a235ef9af70964d7 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131056 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2018-11-02COMPMID-1139: Fix SIGSEGV in arm_compute_benchmarkGeorgios Pinitas
Invalid boundary checks. Change-Id: I9c346dc15d2080f710b283364e83831fa3466941 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131029 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1149: (OCLGrind) Invalid read dwc_3x3Georgios Pinitas
Updates bias padding in NHWC path. Change-Id: Ie986eaa91ad358ec1a3fe1f7b493fb2e93a40809 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131027 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1150 : (OCLGrind) Kernel compilation error and assertionGeorgios Pinitas
-Multiple definitions of COLS_MTX_B in gemm.cl one for FP32 and one for FP16. -GEMMTranspose1xWKernel invalid check fro small window sizes. Change-Id: I9c7ddd3577aec9afc702731ca27a1e10d6eddb81 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/131023 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-814: NEScale NHWC supportGeorgios Pinitas
Change-Id: Ibf5c624a5c5482faa42eb02bc8abe9ae0d65b0d1 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/130608 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-959: bugfix: CLDeconvolutionLayer::validate fails if bias==NULL (#439)wr0112358
Change-Id: Ibca0d8f0b5c01e4a1f1d8b0e67e4c92fe4636572 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/130985 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1142: (OCLGrind) Invalid read in batchnormalization_layer_nhwcGeorgios Pinitas
Adds padding to mean/var/beta/gamma as in nhwc their process step is not 1. Change-Id: Ibd2de58fa2e6b8a8eb2414496cc19371bfa40571 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/130894 Reviewed-by: Michele DiGiorgio <michele.digiorgio@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-1001 - Make the GEMM validation test more genericIsabella Gottardi
Change-Id: I56ce46de03287f5f02203b8f0e2ca946f3df2df2 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/127163 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Giorgio Arena <giorgio.arena@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1104 Add fast math hint in the graph APIGiorgio Arena
Change-Id: I83db135fa94c6884e080f0229a9b6430d908c029 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/129823 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-1086: Optimizing GCGEMM - Add helpers to get target GPU informationMichele Di Giorgio
This patch moves some of the helper functions in CLHelpers.[h,cpp] to GPUTarget.[h,cpp] in order to make them avaialable to both CL and GLES backends. Change-Id: Ib89b05a2084b73eb643b32fac13b8367cc80b6a5 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/128988 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-948: Add validation to CLL2NormalizeLayerJohn Richardson
Change-Id: I452a718a60b81da51cd3e98641fd99c86c4debab Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/129451 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
2018-11-02COMPMID-1050 CL/NEON: Create a function to convert the 2D weights of FC ↵Giorgio Arena
layer from NHWC to NCHW and viceversa Change-Id: If77ffeb92b6eb883e5d2d2c97c2c4d1d23d17c8d Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/129257 Tested-by: Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Anthony Barbier <anthony.barbier@arm.com>
2018-11-02COMPMID-605: Transition buffer memory managerGeorgios Pinitas
Change-Id: Ide7c6124eb19f13f15f517e62d705646a0cd1ecd Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/130184 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-1052 - Rework validate method in CLGEMMGian Marco Iodice
Change-Id: Iece5bd6478b5fac5164abff30c1e63e8a77291a9 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/130374 Reviewed-by: Anthony Barbier <anthony.barbier@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>
2018-11-02COMPMID-959: Fixed Clang-tidy errorAnthony Barbier
Change-Id: Ice1f3b44ae1f503c47b8caf2c3c74f2e976826c7 Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/130757 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Jenkins <bsgcomp@arm.com>