Virtualizing HPC applications using modern hypervisors

  • Authors:
  • Alexander Kudryavtsev;Vladimir Koshelev;Boris Pavlovic;Arutyun Avetisyan

  • Affiliations:
  • Institute for System Programming, Russian Academy of Sciences, Moscow, Russian Fed.;Institute for System Programming, Russian Academy of Sciences, Moscow, Russian Fed.;Institute for System Programming, Russian Academy of Sciences, Moscow, Russian Fed.;Institute for System Programming, Russian Academy of Sciences, Moscow, Russian Fed.

  • Venue:
  • Proceedings of the 2012 workshop on Cloud services, federation, and the 8th open cirrus summit
  • Year:
  • 2012

Quantified Score

Hi-index 0.00

Visualization

Abstract

In this paper we explore the prospects of virtualization technologies being applied to high performance computing tasks. We use an extensive set of HPC benchmarks to evaluate virtualization overhead, including HPC Challenge, NAS Parallel Benchmarks and SPEC MPI2007. We assess KVM and Palacios hypervisors and, with proper tuning of hypervisor, we reduce the performance degradation from 10-60% to 1-5% in many cases with processor cores count up to 240. At the same time, a few tests provide overhead ranging from 20% to 45% even with our enhancements. We describe the techniques necessary to achieve sufficient performance. These include host OS tuning to decrease noise level, using nested paging with large pages for efficient guest memory allocation, and proper NUMA architecture emulation when running virtual machines on NUMA hosts. Comparing KVM/QEMU and Palacios hypervisors, we conclude that in general the results with proper tuning are similar, with KVM providing more stable and predictable results while Palacios being much better on fine-grained tests at a large scale, but showing abnormal performance degradation on a few tests.