A Scheduling Toolkit for Multiprocessor-Task Programming with Dependencies

The performance of many scientific applications for distributed memory platforms can be increased by utilizing multiprocessortask programming. To obtain the minimum parallel runtime an appropriate schedule that takes the computation and communication performance of the target platform into account is required. However, many tools and environments for multiprocessor-task programming lack the support for an integrated scheduler. This paper presents a scheduling toolkit, which provides this support and integrates popular scheduling algorithms. The implemented scheduling algorithms provide an infrastructure to automatically determine a schedule for multiprocessor-tasks with dependencies represented by a task graph.

[1]  Friedhelm Meyer auf der Heide,et al.  Algorithms — ESA 2001 , 2001, Lecture Notes in Computer Science.

[2]  Leslie G. Valiant,et al.  A bridging model for parallel computation , 1990, CACM.

[3]  Thomas Rauber,et al.  Scheduling of Data Parallel Modules for Scientific Computing , 1999, PPSC.

[4]  Arjan J. C. van Gemund,et al.  A low-cost approach towards mixed task and data parallel scheduling , 2001, International Conference on Parallel Processing, 2001..

[5]  Denis Trystram,et al.  A 3/2-Approximation Algorithm for Scheduling Independent Monotonic Malleable Tasks , 2007, SIAM J. Comput..

[6]  Sachin S. Sapatnekar,et al.  A Framework for Exploiting Task and Data Parallelism on Distributed Memory Multicomputers , 1997, IEEE Trans. Parallel Distributed Syst..

[7]  Eugene L. Lawler,et al.  The recognition of Series Parallel digraphs , 1979, SIAM J. Comput..

[8]  Thomas Rauber,et al.  On Compiler Support for Mixed Task and Data Parallelism , 2003, PARCO.

[9]  Thomas Rauber,et al.  A Transformation Approach to Derive Efficient Parallel Implementations , 2000, IEEE Trans. Software Eng..

[10]  Henk J. Sips,et al.  An Integrated Annotation and Compilation Framework for Task and Data Parallel Programming in Java , 2003, PARCO.

[11]  RENAUD LEPÈRE,et al.  Approximation Algorithms for Scheduling Malleable Tasks Under Precedence Constraints , 2001, Int. J. Found. Comput. Sci..

[12]  Ramesh Subramonian,et al.  LogP: towards a realistic model of parallel computation , 1993, PPOPP '93.

[13]  Thomas Rauber,et al.  Compiler support for task scheduling in hierarchical execution models , 1999, J. Syst. Archit..

[14]  Arjan J. C. van Gemund,et al.  CPR: mixed task and data parallel scheduling for distributed systems , 2001, Proceedings 15th International Parallel and Distributed Processing Symposium. IPDPS 2001.

[15]  Matthew Haines,et al.  Approaches for integrating task and data parallelism , 1998, IEEE Concurr..