Improving the dynamic creation of processes in MPI-2

  • Authors:
  • Márcia C. Cera;Guilherme P. Pezzi;Elton N. Mathias;Nicolas Maillard;Philippe O. A. Navaux

  • Affiliations:
  • Instituto de Informática, Universidade Federal do Rio Grande do Sul, Porto Alegre, Brazil;Instituto de Informática, Universidade Federal do Rio Grande do Sul, Porto Alegre, Brazil;Instituto de Informática, Universidade Federal do Rio Grande do Sul, Porto Alegre, Brazil;Instituto de Informática, Universidade Federal do Rio Grande do Sul, Porto Alegre, Brazil;Instituto de Informática, Universidade Federal do Rio Grande do Sul, Porto Alegre, Brazil

  • Venue:
  • EuroPVM/MPI'06 Proceedings of the 13th European PVM/MPI User's Group conference on Recent advances in parallel virtual machine and message passing interface
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

The MPI-2 standard has been implemented for a few years in most of the MPI distributions. As MPI-1.2, it leaves it up to the user to decide when and where the processes must be run. Yet, the dynamic creation of processes, enabled by MPI-2, turns it harder to handle their scheduling manually. This paper presents a scheduler module, that has been implemented with MPI-2, that determines, on-line (i.e. during the execution), on which processor a newly spawned process should be run. The scheduler can apply a basic Round-Robin mechanism or use load information to apply a list scheduling policy, for MPI-2 programs with dynamic creation of processes. A rapid presentation of the scheduler is given, followed by experimental evaluations on three test programs: the Fibonacci computation, the N-Queens benchmark and a computation of prime numbers. Even with the basic mechanisms that have been implemented, a clear gain is obtained regarding the run-time, the load balance, and consequently regarding the number of processes that can be run by the MPI program.