aboutsummaryrefslogtreecommitdiff
path: root/examples/gemm_tuner
AgeCommit message (Collapse)Author
2021-02-11Update OpenCL GEMM benchmark scriptGian Marco Iodice
- Update cl_gemm_benchmark.sh script. Now it also possible to split the benchmark among different platforms - Update documentation Resolves COMPMID-3848 Change-Id: Ifbf71cee5ff83aead76e20dcbf7dc5ce41526594 Signed-off-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/5047 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Giorgio Arena <giorgio.arena@arm.com>
2021-02-09Fix Floating Point Exception for cl_gemm_reshapedManuel Bottini
Return proper error in the examples when such cases occur Resolves: COMPMID-4237 Change-Id: I864c6f73a629a961774c7ae1cb62c28edcbed379 Signed-off-by: Manuel Bottini <manuel.bottini@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/5028 Reviewed-by: Giorgio Arena <giorgio.arena@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
2020-12-08Fix invalid arguments error for cl_gemmlowp* examples without argumentsSiCong Li
* Pass QASYMM8 as default argument for cl_gemmlowp examples * Fix the (arbitrary) quantization info to be the same across tensors to avoid quantization information mismatch issue Resolves COMPMID-4044 Signed-off-by: SiCong Li <sicong.li@arm.com> Change-Id: I14aa6648bbebdcd9b0bb77c47b46c27aa79d6253 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4650 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Michele Di Giorgio <michele.digiorgio@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
2020-12-01Update default C++ standard to C++14Georgios Pinitas
(3RDPARTY_UPDATE) Resolves: COMPMID-3849 Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com> Change-Id: I6369f112337310140e2d6c8e79630cd11138dfa0 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4544 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Michalis Spyrou <michalis.spyrou@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
2020-11-30COMPMID-3982 Add QASYMM8 support to gemm tuner (reshaped and reshaped_only_rhs)SiCongLi
Signed-off-by: SiCongLi <sicong.li@arm.com> Change-Id: Ic6492cfd2701374d837ac53d51b0ddc07e6b1fd1 Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4550 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
2020-11-07COMPMID-3639: (3RDPARTY_UPDATE) Move CL kernels to srcSang-Hoon Park
Change-Id: I10d27db788e5086adae1841e3e2441cd9b76ef84 Signed-off-by: Sang-Hoon Park <sang-hoon.park@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4310 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
2020-10-20COMPMID-3637: Move utility headers from arm_compute to srcSang-Hoon Park
Signed-off-by: Georgios Pinitas <georgios.pinitas@arm.com> Change-Id: If9d6fa8c900b68c4b6fd373f2fc1f9abb83ea917 Signed-off-by: Michalis Spyrou <michalis.spyrou@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/4145 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Sang-Hoon Park <sang-hoon.park@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
2020-09-08COMPMID-3767: Align documentation with trademark rulesMichele Di Giorgio
Change-Id: Id2794f2142e21522283a423f0208dc1022036c79 Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3942 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
2020-08-18COMPMID-3454 Patch1: Relocate data_type_from_name to core/UtilsSiCong Li
Change-Id: I33436dab77a47868fbd9872e0b4cf54b3a173e65 Signed-off-by: SiCong Li <sicong.li@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3694 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Manuel Bottini <manuel.bottini@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
2020-08-13COMPMID-3743: Fix for benchmark_gemm_examples.shGian Marco Iodice
The regular expression used for the gemm shapes was not correct and caused the skip of few tests - Fix the regular expression to retrieve the gemm shapes from the csv file Change-Id: Ib99d9dede728d3aba4beadc460b2a30050fba8f9 Signed-off-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3732 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: SiCong Li <sicong.li@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
2020-08-12COMPMID-3456 Update gemm tuner documentationSiCong Li
* Update README with the improvements * Add a new step-by-step example section Change-Id: I4d76821fb6c2f3b5edd54edfeff053e1c92fbb6e Signed-off-by: SiCong Li <sicong.li@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3713 Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Sheri Zhang <sheri.zhang@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
2020-08-04COMPMID-3618 Add support for export_to_cl_image_rhs in GEMMTuner.pySiCong Li
* Add export_to_cl_image_rhs flag to reshaped and reshaped_only_rhs configs definitions * Exit with error when output directory is not correctly created * Add start and end timestamps to each output directory Signed-off-by: SiCong Li <sicong.li@arm.com> Change-Id: Ief5e8f454e7c6d97b18bbdace877db4e9ffc124c Reviewed-on: https://eu-gerrit-1.euhpc.arm.com/c/VisualCompute/ComputeLibrary/+/252934 Tested-by: bsgcomp <bsgcomp@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3651 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
2020-07-22COMPMID-3549: GEMM Tuner - Validate input parametersEren Kopuz
- Add validate function to kernel and exit if invalid parameters - Also relates to ticket COMPMID-3451 Change-Id: I49df7378a2fe27b8f08c45b373e13ef565a8b5d9 Signed-off-by: Eren Kopuz <eren.kopuz@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3592 Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: SiCong Li <sicong.li@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
2020-07-16COMPMID-3549: Add support for data type in bash and python scriptsEren Kopuz
- Bash script allows option for selecting data type which is passed to benchmark example - Python script parses data type from results and reports as part of GEMMParam Change-Id: I4202a2ce0a9b87b0bd8be5c26bb3027fe72aaaf4 Signed-off-by: Eren Kopuz <eren.kopuz@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3560 Tested-by: Arm Jenkins <bsgcomp@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: SiCong Li <sicong.li@arm.com>
2020-07-13COMPMID-3453: Modify GemmTuner.py to output JSONEren Kopuz
- Added functionality to parse multiple OpenCL_ms measurements and sum - Results are now outputted in 4 JSON files as specified in ticket COMPMID-3453 Change-Id: I9241e9eeaee7c4979e877f87736deaee3cfd38e4 Signed-off-by: Eren Kopuz <eren.kopuz@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3492 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: SiCong Li <sicong.li@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
2020-07-09COMPMID-3325: Add support in gemm_tuner for cl_imageManuel Bottini
Change-Id: I78f815005516ca0e83366bab017884530c1d2e86 Signed-off-by: Manuel Bottini <manuel.bottini@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3518 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
2020-07-09COMPMID-3324: Adjusting capitalization of Arm copyright claim to reflect Arm ↵Michele Di Giorgio
preferred presentation Change-Id: Ib7dcfcbb24b408999dfae366b9da396485aacf78 Signed-off-by: Michele Di Giorgio <michele.digiorgio@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3525 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Tested-by: Georgios Pinitas <georgios.pinitas@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
2020-07-06COMPMID-3452: Skip empty lines and lines starting with # when parsing the ↵Eren Kopuz
gemm configs CSV files - Updated total test number calculation to also ignore empty lines and comments Change-Id: Ic76e7c601094611a324c7a103cb01133a2bbbb05 Signed-off-by: Eren Kopuz <eren.kopuz@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3351 Reviewed-by: SiCong Li <sicong.li@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
2020-06-18COMPMID-3451: Add support for F16 in Gemm TunerEren Kopuz
- Comand line option added to specify F32 or F16 Change-Id: Ibd8a5c8d013a6dff601aa773e94946de1ff6e280 Signed-off-by: Eren Kopuz <eren.kopuz@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/3322 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: SiCong Li <sicong.li@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com>
2020-04-07COMPMID-3233 Extend gemm tuner in the doxygen documentationSiCong Li
* Add location to gemm tuner scripts. * Expanded on the description of the gemm shape and gemm config files. * Reformat the document. Change-Id: Idd23d98b02377b0619cb9f616aa6099321f492bc Signed-off-by: SiCong Li <sicong.li@arm.com> Reviewed-on: https://review.mlplatform.org/c/ml/ComputeLibrary/+/2988 Tested-by: Arm Jenkins <bsgcomp@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2019-11-12COMPMID-2690 Extend Doxygen documents to include GEMM TunerSiCong Li
Signed-off-by: SiCong Li <sicong.li@arm.com> Change-Id: I998210c3c454c091cfe124f1151f0e052c83a0ef Reviewed-on: https://review.mlplatform.org/c/2264 Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
2019-11-12COMPMID-2563 Change how the best overall GEMM configuration is selectedSiCong Li
* Based on a specified tolerance, each GEMMParam (GEMM Shape) now can have a set of best GEMM configurations, instead of just a single one. This improves the robustness and completeness of the tuned results, and is in compliance with how we define the GEMMParam archetypes (the main goal of this story) * The tuner then tries to find the best overall GEMMConfig, from all the best config sets, through the same voting mechanism: the config that gets voted the most is the best overall GEMMConfig. Change-Id: Ief770bb6ffc04629d91f1dc778eea69274e007f0 Signed-off-by: SiCong Li <sicong.li@arm.com> Reviewed-on: https://review.mlplatform.org/c/2228 Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com>
2019-10-23COMPMID-2567: Create a python script to parse the CLGEMM benchmarks andSiCong Li
return the optimal configuration * Fix GEMM Reshaped example by adding the reshape lhs kernel. * Extend runner shell script to save result files with a defined file extension * Extend runner shell script to print out progress and time * Add python script * Update README Change-Id: I484ec8945aded4341743bc1024820523392b8ce3 Signed-off-by: SiCong Li <sicong.li@arm.com> Reviewed-on: https://review.mlplatform.org/c/2122 Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>
2019-09-30COMPMID-2564 - Add CLGEMMNative exampleSiCong Li
* Add gemm native example. * Update shell script to run gemm native example. Signed-off-by: SiCong Li <sicong.li@arm.com> Change-Id: I0252f556b6f94adb776b8cb84b45971f1eb317e4 Reviewed-on: https://review.mlplatform.org/c/1992 Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2019-09-27COMPMID-2565 - Add CLGEMMReshaped exampleSiCong Li
* Add gemm reshaped example. * Update shell script to run gemm reshaped example. * Use OPENCL_TIMER_MS for instrument * Increase number of iterations to 5 Signed-off-by: SiCong Li <sicong.li@arm.com> Change-Id: I41b3cebc5ee6368bf156d0e888101a3ff976a1b5 Reviewed-on: https://review.mlplatform.org/c/1990 Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2019-09-27COMPMID-2692 Use existing command line infrastructure forSiCong Li
CLGEMMReshapedOnlyRHS * Refactor to use existing command line infrastructure. * Fix: Remove errorneous initialisation code for dst matrix. * Fix: Correctly set bias tensor to be a vector. Change-Id: I787bfa08392df806aba3b0be09bab015f16010f7 Signed-off-by: SiCong Li <sicong.li@arm.com> Reviewed-on: https://review.mlplatform.org/c/1985 Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Reviewed-by: Georgios Pinitas <georgios.pinitas@arm.com>
2019-09-25COMPMID-2566 - Add CLGEMMReshapedOnlyRHS exampleSiCong Li
* Add example * Add shell script for running example on predefined tunable configs Change-Id: I1660c37a071492b4da5cf97c1ced5ac4a08b19ce Signed-off-by: SiCong Li <sicong.li@arm.com> Reviewed-on: https://review.mlplatform.org/c/1961 Comments-Addressed: Arm Jenkins <bsgcomp@arm.com> Reviewed-by: Gian Marco Iodice <gianmarco.iodice@arm.com> Tested-by: Arm Jenkins <bsgcomp@arm.com>