Programmability and portability for exascale: Top down programming methodology and tools with StarSs

► We propose a top-down methodology to develop parallel applications. ► StarSs is proposed as the core programming model. ► The following development tools are used to develop the applications: TAREADOR and TEMANEJO. ► Performance tools as Scalasca and Paraver are used to debug the applications. Sta...

Full description

Saved in:
Bibliographic Details
Published in:Journal of computational science Vol. 4; no. 6; pp. 450 - 456
Main Authors: Subotić, Vladimir, Brinkmann, Steffen, Marjanović, Vladimir, Badia, Rosa M., Gracia, Jose, Niethammer, Christoph, Ayguade, Eduard, Labarta, Jesus, Valero, Mateo
Format: Journal Article
Language:English
Published: Elsevier B.V 01.11.2013
Subjects:
ISSN:1877-7503, 1877-7511
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:► We propose a top-down methodology to develop parallel applications. ► StarSs is proposed as the core programming model. ► The following development tools are used to develop the applications: TAREADOR and TEMANEJO. ► Performance tools as Scalasca and Paraver are used to debug the applications. StarSs is a task-based programming model that allows to parallelize sequential applications by means of annotating the code with compiler directives. The model further supports transparent execution of designated tasks on heterogeneous platforms, including clusters of GPUs. This paper focuses on the methodology and tools that complements the programming model forming a consistent development environment with the objective of simplifying the live of application developers. The programming environment includes the tools TAREADOR and TEMANEJO, which have been designed specifically for StarSs. TAREADOR, a Valgrind-based tool, allows a top-down development approach by assisting the programmer in identifying tasks and their data-dependencies across all concurrency levels of an application. TEMANEJO is a graphical debugger supporting the programmer by visualizing the task dependency tree on one hand, but also allowing to manipulate task scheduling or dependencies. These tools are complemented with a set of performance analysis tools (Scalasca, Cube and Paraver) that enable to fine tune StarSs application.
ISSN:1877-7503
1877-7511
DOI:10.1016/j.jocs.2013.01.008