Integrating task and data parallelism by means of coordination patterns

This paper shows, by means of some examples, the suitability and expressiveness of a pattern-based approach to integrate task and data parallelism. Coordination skeletons or patterns express task parallelism among a collection of data parallel HPF tasks. Patterns specify the interaction among domains involved in the application along with the processor and data layouts. On the one hand, the use of domains, i.e. regions together with some interaction information, improves pattern reusability. On the other hand, the knowledge at the coordination level of data distribution belonging to the different HPF tasks is the key for an efficient implementation of the communication among them. Besides that, our system implementation requires no change to the runtime system support of the HPF compiler used. We also present some experimental results that show the efficiency of the model.

[1]  José M. Troya,et al.  DIP: a pattern-based approach for task and data parallelism integration , 2001, SAC.

[2]  David B. Skillicorn,et al.  Building programs in the network of tasks model , 2000, SAC '00.

[3]  Murray Cole,et al.  Activity graphs: a model-independent intermediate layer for skeletal coordination , 2000, SAC '00.

[4]  José M. Troya,et al.  BCL: A Border-based Coordination Language , 2000, PDPTA.

[5]  Salvatore Orlando,et al.  Integrating task and data parallelism with taskHPF , 2000, PDPTA.

[6]  Salvatore Orlando,et al.  COLTHPF, a run‐time support for the high‐level co‐ordination of HPF tasks , 1999 .

[7]  Thomas Rauber,et al.  A coordination language for mixed task and and data parallel programs , 1999, SAC '99.

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

[9]  Susanna Pelagatti Structured development of parallel programs , 1997 .

[10]  Opusc A Coordination Language for Multidisciplinary Applications , 1997 .

[11]  Alok N. Choudhary,et al.  A Library-Based Approach to Task Parallelism in a Data-Parallel Language , 1997, J. Parallel Distributed Comput..

[12]  Jaspal Subhlok,et al.  A new model for integrated nested task and data parallel programming , 1997, PPOPP '97.

[13]  Joel H. Saltz,et al.  An Integrated Runtime and Compile-Time Approach for Parallelizing Structured and Block Structured Applications , 1995, IEEE Trans. Parallel Distributed Syst..

[14]  Peter A. Dinda,et al.  The CMU task parallel program suite , 1994 .

[15]  Guy L. Steele,et al.  The High Performance Fortran Handbook , 1993 .

[16]  Nicholas Carriero,et al.  Coordination languages and their significance , 1992, CACM.