High-Level Support for Pipeline Parallelism on Many-Core Architectures

High-Level Support for Pipeline Parallelism on Many-Core Architectures

Abstract

With the increasing architectural diversity of many-core architectures the challenges of parallel programming and code portability will sharply rise. The EU project PEPPHER addresses these issues with a component-based approach to application development on top of a task-parallel execution model. Central to this approach are multi-architectural components which encapsulate different implementation variants of application functionality tailored for different core types. An intelligent runtime system selects and dynamically schedules component implementation variants for efficient parallel execution on heterogeneous many-core architectures. On top of this model we have developed language, compiler and runtime support for a specific class of applications that can be expressed using the pipeline pattern. We propose C/C++ language annotations for specifying pipeline patterns and describe the associated compilation and runtime infrastructure. Experimental results indicate that with our high-level approach performance comparable to manual parallelization can be achieved.

Grafik Top
Authors
  • Benkner, Siegfried
  • Bajrovic, Enes
  • Marth, Erich
  • Sandrieser, Martin
  • Namyst, Raymond
  • Thibault, Samuel
Grafik Top
Projects
Grafik Top
Shortfacts
Category
Paper in Conference Proceedings or in Workshop Proceedings (Paper)
Event Title
International European Conference on Parallel and Distributed Computing (Euro-Par 2012), Rhodes Island, Greece, Augsut 27-31, 2012
Divisions
Scientific Computing
Event Type
Conference
Date
27 August 2012
Export
Grafik Top