Skip to Main content Skip to Navigation
Journal articles

Intermediate Representations for Explicitly Parallel Programs

Abstract : While compilers generally support parallel programming languages and APIs, their internal program representations are mostly designed from the sequential programs standpoint (exceptions include source-to-source parallel compilers, for instance). This makes the integration of compilation techniques dedicated to parallel programs more challenging. In addition, parallelism has various levels and different targets, each of them with specific characteristics and constraints. With the advent of multi-core processors and general purpose accelerators, parallel computing is now a common and pervasive consideration. Thus, software support to parallel programming activities is essential to make this technical transition more realistic and beneficial. The case of compilers is fundamental as they deal with (parallel) programs at a structural level, thus the need for intermediate representations. This article surveys and discusses attempts to provide intermediate representations for the proper support of explicitly parallel programs. We highlight the gap between available contributions and their concrete implementation in compilers and then exhibit possible future research directions.
Complete list of metadata

https://hal-mines-paristech.archives-ouvertes.fr/hal-03245804
Contributor : Claire Medrala <>
Submitted on : Wednesday, June 2, 2021 - 9:03:10 AM
Last modification on : Friday, June 4, 2021 - 3:14:27 AM

Identifiers

Citation

Adilla Susungi, Claude Tadonki. Intermediate Representations for Explicitly Parallel Programs. ACM Computing Surveys, Association for Computing Machinery, 2021, 54 (5), pp.1-24. ⟨10.1145/3452299⟩. ⟨hal-03245804⟩

Share

Metrics

Record views

25