Program Sequentially, Carefully, and Benefit from Compiler Advances for Parallel Heterogeneous Computing

Abstract : The current microarchitecture trend leads toward heterogeneity. This evolution is driven by the end of Moore's law and the frequency wall due to the power wall. Moreover, with the spreading of smartphone, some constraints from the mobile world drive the design of most new architectures. An immediate consequence is that an application has to be executable on various targets. Porting and maintaining multiple versions of the code base requires different skills and the efforts required in the process as well as the increased complexity in debugging and testing are time consuming, thus expensive. Some solutions based on compilers emerge. They are based either on directives added to C like in openhmpp or openacc or on automatic solution like pocc, Pluto, ppcg, or Par4All. However compilers cannot retarget in an efficient way any program written in a low-level language such as unconstrained C. Programmers should follow good practices when writing code so that compilers have more room to perform the transformations required for efficient execution on heterogeneous targets. This chapter explores the impact of different patterns used by programmers, and defines a set of good practices allowing a compiler to generate efficient code.
Type de document :
Chapitre d'ouvrage
Liste complète des métadonnées

Littérature citée [30 références]  Voir  Masquer  Télécharger
Contributeur : Claire Medrala <>
Soumis le : mardi 30 mai 2017 - 14:38:05
Dernière modification le : lundi 12 novembre 2018 - 10:54:18
Document(s) archivé(s) le : mercredi 6 septembre 2017 - 10:02:34


Fichiers produits par l'(les) auteur(s)



Mehdi Amini, Corinne Ancourt, Béatrice Creusillet, François Irigoin, Ronan Keryell. Program Sequentially, Carefully, and Benefit from Compiler Advances for Parallel Heterogeneous Computing. Magoulès Frédéric. Patterns for Parallel Programming on GPUs, Saxe-Coburg Publications, pp. 149-169, 2012, 978-1-874672-57-9 ⟨10.4203/csets.34.6⟩. ⟨hal-01526469⟩



Consultations de la notice


Téléchargements de fichiers