Piecewise Holistic Autotuning of Parallel Programs with CERE - Université de Versailles Saint-Quentin-en-Yvelines Accéder directement au contenu
Article Dans Une Revue Concurrency and Computation: Practice and Experience Année : 2017

Piecewise Holistic Autotuning of Parallel Programs with CERE

Résumé

Current architecture complexity requires fine tuning of compiler and runtime parameters to achieve best performance. Autotuning substantially improves default parameters in many scenarios but it is a costly process requiring long iterative evaluations. We propose an automatic piecewise autotuner based on CERE (Codelet Extractor and REplayer). CERE decomposes applications into small pieces called codelets: each codelet maps to a loop or to an OpenMP parallel region and can be replayed as a standalone program.Codelet autotuning achieves better speedups at a lower tuning cost. By grouping codelet invocations with the same performance behavior, CERE reduces the number of loops or OpenMP regions to be evaluated. Moreover unlike whole-program tuning, CERE customizes the set of best parameters for each specific OpenMP region or loop. We demonstrate the CERE tuning of compiler optimizations, number of hreads, thread affinity, and scheduling policy on both NUMA and heterogeneous architectures. Over the NAS benchmarks, we achieve an average speedup of1.08x after tuning. Tuning a codelet is 13x cheaper than whole-program evaluation and predicts the tuning impact with a 94.7% accuracy. Similarly, exploring thread configurations and scheduling policies for a Black-Scholes solver on an heterogeneous big.LITTLE architecture is over 40x faster using CERE.
Fichier principal
Vignette du fichier
flags.pdf (847.97 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01542912 , version 1 (27-06-2017)
hal-01542912 , version 2 (28-11-2017)

Licence

Copyright (Tous droits réservés)

Identifiants

Citer

Mihail Popov, Chadi Akel, Yohan Chatelin, William Jalby, Pablo de Oliveira Castro. Piecewise Holistic Autotuning of Parallel Programs with CERE. Concurrency and Computation: Practice and Experience, 2017, ⟨10.1002/cpe.4190⟩. ⟨hal-01542912v1⟩
147 Consultations
393 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More