A dynamic scheduler for balancing HPC applications

  • Authors:
  • Carlos Boneti;Roberto Gioiosa;Francisco J. Cazorla;Mateo Valero

  • Affiliations:
  • Universitat Politecnica de Catalunya, Spain;Barcelona Supercomputing Center, Spain;Barcelona Supercomputing Center, Spain;Barcelona Supercomputing Center, Spain and Universitat Politecnica de Catalunya, Spain

  • Venue:
  • Proceedings of the 2008 ACM/IEEE conference on Supercomputing
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Load imbalance cause significant performance degradation in High Performance Computing applications. In our previous work we showed that load imbalance can be alleviated by modern MT processors that provide mechanisms for controlling the allocation of processors internal resources. In that work, we applied static, hand-tuned resource allocations to balance HPC applications, providing improvements for benchmarks and real applications. In this paper we propose a dynamic process scheduler for the Linux kernel that automatically and transparently balances HPC applications according to their behavior. We tested our new scheduler on an IBM POWER5 machine, which provides a software-controlled prioritization mechanism that allows us to bias the processor resource allocation. Our experiments show that the scheduler reduces the imbalance of HPC applications, achieving results similar to the ones obtained by hand-tuning the applications (up to 16%). Moreover, our solution reduces the application's execution time combining effect of load balance and high responsive scheduling.