A communication-ordered task graph allocation algorithm

The inherently asynchronous nature of the data ow computation model allows the exploitation of maximum parallelism in program execution While this computational model holds great promise several problems must be solved in order to achieve a high degree of program performance The allocation and scheduling of programs on MIMD distributed memory parallel hardware is necessary for the implementation of e cient parallel systems Finding optimal solutions requires that maxi mum parallelism be achieved consistent with resource limits and minimizing communication costs and has been proven to be in the class of NP complete problems This paper addresses the problem of static allocation of tasks to distributed memory MIMD systems where simultaneous computation and communication is a factor This paper discusses similarities and di erences between several recent heuristic allocation approaches and identi es common problems inherent in these approaches This paper presents a new algorithm scheme and heuristics that resolves the identi ed problems and shows signi cant performance bene ts