OpenStream: Expressiveness and Data-Flow Compilation of OpenMP Streaming Programs

Antoniu Pop 1 Albert Cohen 1
1 Parkas - Parallélisme de Kahn Synchrone
DI-ENS - Département d'informatique de l'École normale supérieure, ENS Paris - École normale supérieure - Paris, Inria Paris-Rocquencourt, CNRS - Centre National de la Recherche Scientifique : UMR 8548
Abstract : We present OpenStream, a data-flow extension of OpenMP to express dynamic dependent tasks. The language supports nested task creation, modular composition, variable and unbounded sets of producers/consumers, and first-class streams. These features, enabled by our original compilation flow, allow translating high-level parallel programming patterns, like dependences arising from StarSs' array regions, or universal low-level primitives like futures. In particular, these dynamic features can be embedded efficiently and naturally into an unmanaged imperative language, avoiding the complexity and overhead of a concurrent garbage collector. We demonstrate the performance advantages of a data-flow execution model compared to more restricted task and barrier models. We also demonstrate the efficiency of our compilation and runtime algorithms for the support of complex dependence patterns arising from StarSs benchmarks.
Type de document :
Article dans une revue
ACM Transactions on Architecture and Code Optimization, Association for Computing Machinery, 2013, 9 (4), 〈10.1145/2400682.2400712〉
Liste complète des métadonnées

https://hal.inria.fr/hal-00786675
Contributeur : Albert Cohen <>
Soumis le : dimanche 10 février 2013 - 01:15:39
Dernière modification le : jeudi 29 septembre 2016 - 01:22:06

Identifiants

Collections

Citation

Antoniu Pop, Albert Cohen. OpenStream: Expressiveness and Data-Flow Compilation of OpenMP Streaming Programs. ACM Transactions on Architecture and Code Optimization, Association for Computing Machinery, 2013, 9 (4), 〈10.1145/2400682.2400712〉. 〈hal-00786675〉

Partager

Métriques

Consultations de la notice

222