An efficient algorithm for the physical mapping of clustered task graphs onto multiprocessor architectures

  • Authors:
  • Nectarios Koziris;Michael Romesis;Panayiotis Tsanakas;George Papakonstantinou

  • Affiliations:
  • National Technical University of Athens, Dept. of Electrical and Computer Engineering, Computer Science Division, Computing Systems Laboratory, Zografou, Greece;National Technical University of Athens, Dept. of Electrical and Computer Engineering, Computer Science Division, Computing Systems Laboratory, Zografou, Greece;National Technical University of Athens, Dept. of Electrical and Computer Engineering, Computer Science Division, Computing Systems Laboratory, Zografou, Greece;National Technical University of Athens, Dept. of Electrical and Computer Engineering, Computer Science Division, Computing Systems Laboratory, Zografou, Greece

  • Venue:
  • EURO-PDP'00 Proceedings of the 8th Euromicro conference on Parallel and distributed processing
  • Year:
  • 2000

Quantified Score

Hi-index 0.00

Visualization

Abstract

The most important issue in sequential program parallelisation is the efficient assignment of computations into different processing elements. In the past, too many approaches were devoted in efficient program parallelization considering various models for the parallel programs and the target architectures. The most widely used parallelism description model is the task graph model with precedence constraints. Nevertheless, as far as physical mapping of tasks onto parallel architectures is concerned, little research has given practical results. It is well known that the physical mapping problem is NP-hard in the strong sense, thus allowing only for heuristic approaches. Most researchers or tool programmers use exhaustive algorithms, or the classical method of simulated annealing. This paper presents an alternative approach onto the mapping problem. Given the graph of clustered tasks, and the graph of the target distributed architecture, our heuristic finds a mapping by first placing the highly communicative tasks on adjacent nodes of the processor network. Once these "backbone" tasks are mapped, there is no backtracking, thus achieving low complexity. Therefore, the remaining tasks are placed beginning from those close to the "backbone" tasks. The paper concludes with performance and comparison results which reveal the method's efficiency.