, Volume 96, Issue 12, pp 1195–1211

The PEPPHER composition tool: performance-aware composition for GPU-based systems


DOI: 10.1007/s00607-013-0371-8

Cite this article as:
Dastgeer, U., Li, L. & Kessler, C. Computing (2014) 96: 1195. doi:10.1007/s00607-013-0371-8


The PEPPHER (EU FP7 project) component model defines the notion of component, interface and meta-data for homogeneous and heterogeneous parallel systems. In this paper, we describe and evaluate the PEPPHER composition tool, which explores the application’s components and their implementation variants, generates the necessary low-level code that interacts with the runtime system, and coordinates the native compilation and linking of the various code units to compose the overall application code to optimize performance. We discuss the concept of smart containers and its benefits for reducing dispatch overhead, exploiting implicit parallelism across component invocations and runtime optimization of data transfers. In an experimental evaluation with several applications, we demonstrate that the composition tool provides a high-level programming front-end while effectively utilizing the task-based PEPPHER runtime system (StarPU) underneath for different usage scenarios on GPU-based systems.


PEPPHER project Component model GPU-based systems Performance portability Dynamic scheduling 

Mathematics Subject Classification

68N20 Compilers and interpreters 

Copyright information

© Springer-Verlag Wien 2013

Authors and Affiliations

  1. 1.PELAB, Department of Computer and Information ScienceLinköping UniversityLinköpingSweden

Personalised recommendations