z-logo
open-access-imgOpen Access
Combined Scheduling and Mapping for Scalable Computing with Parallel Tasks
Author(s) -
Jörg Dümmler,
Thomas Rauber,
Gudula Rünger
Publication year - 2012
Publication title -
scientific programming
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.269
H-Index - 36
eISSN - 1875-919X
pISSN - 1058-9244
DOI - 10.1155/2012/514940
Subject(s) - computer science , parallel computing , scalability , interconnection , embarrassingly parallel , multi core processor , scheduling (production processes) , distributed computing , programmer , supercomputer , structuring , implementation , data intensive computing , task parallelism , parallel algorithm , programming paradigm , computer architecture , parallelism (grammar) , grid computing , embedded system , computer network , operating system , programming language , grid , operations management , geometry , mathematics , finance , economics
Recent and future parallel clusters and supercomputers use symmetric multiprocessors (SMPs) and multi-core processors as basic nodes, providing a huge amount of parallel resources. These systems often have hierarchically structured interconnection networks combining computing resources at different levels, starting with the interconnect within multi-core processors up to the interconnection network combining nodes of the cluster or supercomputer. The challenge for the programmer is that these computing resources should be utilized efficiently by exploiting the available degree of parallelism of the application program and by structuring the application in a way which is sensitive to the heterogeneous interconnect. In this article, we pursue a parallel programming method using parallel tasks to structure parallel implementations. A parallel task can be executed by multiple processors or cores and, for each activation of a parallel task, the actual number of executing cores can be adapted to the specific execution situation. In particular, we propose a new combined scheduling and mapping technique for parallel tasks with dependencies that takes the hierarchical structure of modern multi-core clusters into account. An experimental evaluation shows that the presented programming approach can lead to a significantly higher performance compared to standard data parallel implementations.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here
Accelerating Research

Address

John Eccles House
Robert Robinson Avenue,
Oxford Science Park, Oxford
OX4 4GP, United Kingdom