A Tool to Schedule Parallel Applications on Multiprocessors: The NANOS CPU MANAGER

  • Authors:
  • Xavier Martorell;Julita Corbalán;Dimitrios S. Nikolopoulos;Nacho Navarro;Eleftherios D. Polychronopoulos;Theodore S. Papatheodorou;Jesús Labarta

  • Affiliations:
  • -;-;-;-;-;-;-

  • Venue:
  • IPDPS '00/JSSPP '00 Proceedings of the Workshop on Job Scheduling Strategies for Parallel Processing
  • Year:
  • 2000

Quantified Score

Hi-index 0.01

Visualization

Abstract

Scheduling parallel applications on shared--memory multiprocessors is a difficult task that requires a lot of tuning from application programmers, as well as operating system developers and system managers. In this paper, we present the characteristics related to kernel--level scheduling of the NANOS environment and the results we are achieving. The NANOS environment is designed and tuned specifically to achieve high performance in current shared--memory multiprocessors. Taking advantage of the wide and efficient dialog established between applications and the NANOS environment, we are designing powerful scheduling policies. The information exchanged ranges from simply communicating the number of requested processors to providing information of the current speedup achieved by the applications. We have devised several scheduling policies that use this interface, such as Equipartition, Variable Time Quantum DSS and Dynamic Performance Analysis. The results we have obtained with these policies indicate that there is a lot of work to do in the search for a "good" scheduling policy, which can include characteristics like sustainable execution times, fairness and throughput. For instance, we show through several experiments that benefits in execution time range from 15% to 100%, depending on the policy used and the characteristics of the workload.