Skip to Main content Skip to Navigation
Book sections

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.
Complete list of metadata

Cited literature [30 references]  Display  Hide  Download

https://hal-mines-paristech.archives-ouvertes.fr/hal-01526469
Contributor : Claire Medrala <>
Submitted on : Tuesday, May 30, 2017 - 2:38:05 PM
Last modification on : Friday, October 23, 2020 - 4:52:03 PM
Long-term archiving on: : Wednesday, September 6, 2017 - 10:02:34 AM

File

A-503.pdf
Files produced by the author(s)

Identifiers

Citation

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⟩

Share

Metrics

Record views

268

Files downloads

380