Programmability and Performance Portability Aspects of Heterogeneous Multi-/Manycore Systems

Abstract : We discuss three complementary approaches that can provide both portability and an increased level of abstraction for the programming of heterogeneous multicore systems. Together, these approaches also support performance portability, as currently investigated in the EU FP7 project PEPPHER. In particular, we consider (1) a library-based approach, here represented by the integration of the SkePU C++ skeleton programming library with the StarPU runtime system for dynamic scheduling and dynamic selection of suitable execution units for parallel tasks; (2) a language-based approach, here represented by the Offload-C++ high-level language extensions and Offload compiler to generate platform-specific code; and (3) a component-based approach, specifically the PEPPHER component system for annotating user-level application components with performance metadata, thereby preparing them for performance-aware composition. We discuss the strengths and weaknesses of these approaches and show how they could complement each other in an integrational programming framework for heterogeneous multicore systems.
Complete list of metadatas

Cited literature [13 references]  Display  Hide  Download

https://hal.inria.fr/hal-00776610
Contributor : Samuel Thibault <>
Submitted on : Tuesday, January 15, 2013 - 5:51:49 PM
Last modification on : Tuesday, February 12, 2019 - 9:47:51 PM
Long-term archiving on : Tuesday, April 16, 2013 - 4:00:36 AM

File

date12-paper.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-00776610, version 1

Citation

Christoph Kessler, Usman Dastgeer, Samuel Thibault, Raymond Namyst, Andrew Richards, et al.. Programmability and Performance Portability Aspects of Heterogeneous Multi-/Manycore Systems. Design, Automation and Test in Europe (DATE), Mar 2012, Dresden, Germany. ⟨hal-00776610⟩

Share

Metrics

Record views

611

Files downloads

732