• DocumentCode
    1653753
  • Title

    Programmability and performance portability aspects of heterogeneous multi-/manycore systems

  • Author

    Kessler, Christoph ; Dastgeer, Usman ; Thibault, Samuel ; Namyst, Raymond ; Richards, Andrew ; Dolinsky, Uwe ; Benkner, Siegfried ; Träff, Jesper Larsson ; Pllana, Sabri

  • Author_Institution
    Linkoping Univ., Linkoping, Sweden
  • fYear
    2012
  • Firstpage
    1403
  • Lastpage
    1408
  • 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.
  • Keywords
    C++ language; meta data; multiprocessing systems; object-oriented programming; program compilers; scheduling; software performance evaluation; Offload compiler; Offload-C++ high-level language extension; PEPPHER component system; SkePU C++ skeleton programming library; StarPU runtime system; complementary approach; component-based approach; dynamic scheduling; dynamic selection; heterogeneous manycore system; heterogeneous multicore system programming; integrational programming framework; language-based approach; library-based approach; parallel task; performance metadata; performance portability; performance-aware composition; platform-specific code generation; programmability; user-level application component annotation; Graphics processing unit; Performance evaluation; Pipeline processing; Programming; Runtime; Skeleton;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Design, Automation & Test in Europe Conference & Exhibition (DATE), 2012
  • Conference_Location
    Dresden
  • ISSN
    1530-1591
  • Print_ISBN
    978-1-4577-2145-8
  • Type

    conf

  • DOI
    10.1109/DATE.2012.6176582
  • Filename
    6176582