Preserving high-level semantics of parallel programming annotations through the compilation flow of optimizing compilers - INRIA - Institut National de Recherche en Informatique et en Automatique Accéder directement au contenu
Communication Dans Un Congrès Année : 2010

Preserving high-level semantics of parallel programming annotations through the compilation flow of optimizing compilers

Résumé

This paper presents a technique for representing the high level semantics of parallel programming languages in the intermediate representation of optimizing compilers. The semantics of these languages does not fit well in the intermediate representation of classical optimizing compilers, designed for single-threaded applications, and is usually lowered to threaded code with opaque concurrency bindings through source-to-source compilation or a front-end compiler pass. The semantical properties of the high-level parallel language are obfuscated at a very early stage of the compilation flow. This is detrimental to the effectiveness of downstream optimizations. We define the properties we introduce in this representation and prove that they are preserved by existing optimization passes. We characterize the optimizations that are enabled or interfere with this representation and evaluate the impact of the serial optimizations enabled by this technique for concurrent programs, using a prototype implemented in a branch of GCC 4.6. While we focus on the OpenMP language as a running example, we also analyze how our semantical abstraction can serve the unification of the analyses and optimizations for a variety of parallel programming languages.
Fichier principal
Vignette du fichier
paper.pdf (148.31 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

inria-00551518 , version 1 (04-01-2011)

Identifiants

  • HAL Id : inria-00551518 , version 1

Citer

Antoniu Pop, Albert Cohen. Preserving high-level semantics of parallel programming annotations through the compilation flow of optimizing compilers. Proceedings of the 15th Workshop on Compilers for Parallel Computers (CPC'10), Jul 2010, Vienna, Austria. ⟨inria-00551518⟩
249 Consultations
107 Téléchargements

Partager

Gmail Facebook X LinkedIn More