Using Explicit Platform Descriptions to Support Programming of Heterogeneous Many-Core Systems

Using Explicit Platform Descriptions to Support Programming of Heterogeneous Many-Core Systems

Abstract

Heterogeneous many-core systems constitute a viable approach for coping with power constraints in modern computer architectures and can now be found across the whole computing landscape ranging from mobile devices, to desktop systems and servers, all the way to high-end supercomputers and large-scale data centers. While these systems promise to offer superior performance-power ratios, programming heterogeneous many-core architectures efficiently has been shown to be notoriously difficult. Programmers typically are forced to take into account a plethora of low-level architectural details and usually have to resort to a combination of different programming models within a single application. In this paper we propose a platform description language (PDL) that enables to capture key architectural patterns of commonly used heterogeneous computing systems. PDL architecture descriptions support both programmers and toolchains by providing platform-specific information in a well-defined and explicit manner. We have developed a prototype source-to-source compilation framework that utilizes PDL descriptors to transform sequential task-based programs with source code annotations into a form that is convenient for execution on heterogeneous many-core systems. Our framework relies on a component-based approach that accommodates for different implementation variants of tasks, customized for different parts of a heterogeneous platform, and utilizes an advanced runtime system for exploiting parallelism through dynamic task scheduling. We show various usage scenarios of our PDL and demonstrate the effectiveness of our framework for a commonly used scientific kernel and a financial application on different configurations of a state-of-the-art CPU/GPU system.

Grafik Top
Authors
  • Sandrieser, Martin
  • Benkner, Siegfried
  • Pllana, Sabri
Grafik Top
Projects
Grafik Top
Shortfacts
Category
Journal Paper
Divisions
Scientific Computing
Subjects
Parallele Datenverarbeitung
Journal or Publication Title
Parallel Computing
Page Range
pp. 52-56
Number
1-2
Volume
38
Date
January 2012
Export
Grafik Top