Clustering and reassignment-based mapping strategy for message-passing architectures

A fundamental issue affecting the performance of a parallel application running on message-passing parallel systems is the assignment of tasks to processors. In this paper we present a compilation-time two stage mapping strategy (denoted as Task Allocation by Clustering, Reassignment and Embedding, TACRE) used for mapping arbitrary programs (modeled as task interaction graphs) onto message-passing parallel systems. The first stage is based on task clustering and task reassignment algorithms that contract the original task graph. The second stage takes the contracted graph and tries to well match the physical properties of the target system. The results shown that TACRE provides a good trade-off between mapping quality and computational complexity.

[1]  Vassilis Zissimopoulos,et al.  On the Task Assignment Problem: Two New Efficient Heuristic Algorithms , 1997, J. Parallel Distributed Comput..

[2]  Borut Robic,et al.  Improved Schemes for Mapping Arbitrary Algorithms Onto Processor Meshes , 1996, Parallel Comput..

[3]  Kang G. Shin,et al.  Optimal Task Assignment in Homogeneous Networks , 1997, IEEE Trans. Parallel Distributed Syst..

[4]  J. Sheild,et al.  Partitioning concurrent VLSI simulation programs onto a multiprocessor by simulated annealing , 1987 .

[5]  Pascal Bouvry,et al.  ANDES: Evaluating mapping strategies with synthetic programs , 1996, J. Syst. Archit..

[6]  Hong Shen,et al.  Divide-and-conquer mapping of parallel programs onto hypercube computers , 1997, J. Syst. Archit..

[7]  Ishfaq Ahmad,et al.  Optimal task assignment in heterogeneous distributed computing systems , 1998, IEEE Concurr..

[8]  Peter M. A. Sloot,et al.  Task Allocation by Parallel Evolutionary Computing , 1997, J. Parallel Distributed Comput..

[9]  Yuan-Fang Wang,et al.  Global Optimization for Mapping Parallel Image Processing Tasks on Distributed Memory Machines , 1997, J. Parallel Distributed Comput..

[10]  Tao Yang,et al.  PYRROS: static task scheduling and code generation for message passing multiprocessors , 1992 .

[11]  Tevfik Bultan,et al.  A New Mapping Heuristic Based on Mean Field Annealing , 1992, J. Parallel Distributed Comput..

[12]  Ana Cortés,et al.  An efficient clustering-based approach for mapping parallel programs , 1997, PDP.

[13]  Fernando Guirado,et al.  Exploiting Knowledge of Temporal Behaviour in Parallel Programs for Improving Distributed Mapping , 2000, Euro-Par.

[14]  Imtiaz Ahmad,et al.  Task assignment using a problem-space genetic algorithm , 1995, Concurr. Pract. Exp..

[15]  Tao Yang,et al.  A Comparison of Clustering Heuristics for Scheduling Directed Acycle Graphs on Multiprocessors , 1992, J. Parallel Distributed Comput..

[16]  Kemal Efe,et al.  Heuristic Models of Task Assignment Scheduling in Distributed Systems , 1982, Computer.

[17]  Sanjay V. Rajopadhye,et al.  OREGAMI: Tools for mapping parallel computations to parallel architectures , 1991, International Journal of Parallel Programming.

[18]  Jake K. Aggarwal,et al.  A Generalized Scheme for Mapping Parallel Algorithms , 1993, IEEE Trans. Parallel Distributed Syst..

[19]  Shahid H. Bokhari,et al.  On the Mapping Problem , 1981, IEEE Transactions on Computers.

[20]  Ana Cortés,et al.  Performance Comparison of Strategies for Static Mapping of Parallel Programs , 1997, HPCN Europe.

[21]  Michel Cosnard,et al.  Automatic task graph generation techniques , 1995, Proceedings of the Twenty-Eighth Annual Hawaii International Conference on System Sciences.

[22]  Ladislav Hluchý,et al.  Dynamic load balancing , 2001 .

[23]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[24]  Samuel T. Chanson,et al.  Allocating Task Interaction Graphs to Processors in Heterogeneous Networks , 1997, IEEE Trans. Parallel Distributed Syst..

[25]  Michael G. Norman,et al.  Models of machines and computation for mapping in multicomputers , 1993, CSUR.

[26]  Vivek Sarkar,et al.  Mapping Iterative Task Graphs on Distributed Memory Machines , 1995, ICPP.

[27]  J. Ramanujam,et al.  Cluster partitioning approaches to mapping parallel programs onto a hypercube , 1987, Parallel Comput..

[28]  P. Sadayappan,et al.  Nearest-Neighbor Mapping of Finite Element Graphs onto Processor Meshes , 1987, IEEE Transactions on Computers.

[29]  Shen Shen Wu,et al.  Heuristic Algorithms for Task Assignment and Scheduling in a Processor Network , 1994, Parallel Comput..

[30]  Ian T. Foster,et al.  Designing and building parallel programs - concepts and tools for parallel software engineering , 1995 .

[31]  José C. Cunha,et al.  Parallel program development for cluster computing: methodology, tools and integrated environments , 2001 .