• DocumentCode
    30762
  • Title

    The Case for Partitioning Virtual Machines on Multicore Architectures

  • Author

    Ibrahim, Khaled Z. ; Hofmeyr, Steven ; Iancu, C.

  • Author_Institution
    Lawrence Berkeley Nat. Lab., Berkeley, CA, USA
  • Volume
    25
  • Issue
    10
  • fYear
    2014
  • fDate
    Oct. 2014
  • Firstpage
    2683
  • Lastpage
    2696
  • Abstract
    In this paper we argue that partitioning is required for attaining the best performance of scientific applications when running on virtual machines. Current memory management and I/O handling techniques introduce high overhead when running scientific applications. Using KVM, we quantify this impact on applications written in multiple paradigms: message passing, shared memory and partitioned global address spaces. Our analysis shows that on NUMA systems, current memory translation schemes cannot preserve the locality of access and introduce up to 82 percent slowdown. We discuss the interaction between contemporary OS and VM architectures and argue that partitioning is the best solution to enforce memory locality. Current I/O solutions using one assistant task cannot provide the level of I/O parallelism required by scientific applications and we observe an average 7.2 × application slowdown on a cluster with 16 cores per node. More specialized solutions that implement shared memory by-pass within the communication stack also do not scale well with cores and we observe an average 2.4 × application slowdown. Overall, our results indicate that using partitioning and direct inter-VM shared memory support is enough to provide close to native performance in multicore clusters.
  • Keywords
    input-output programs; multiprocessing systems; parallel processing; virtual machines; KVM; NUMA systems; input-output handling techniques; input-output parallelism; inter-VM shared memory support; memory locality; memory management; memory translation schemes; message passing; multicore architecture; multicore clusters; partitioned global address space; virtual machines partitioning; Benchmark testing; Hardware; Memory management; Sockets; Virtual machine monitors; Virtual machining; Virtualization; HPC applications; NUMA systems; Virtual machines; parallel IO; parallel systems;
  • fLanguage
    English
  • Journal_Title
    Parallel and Distributed Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    1045-9219
  • Type

    jour

  • DOI
    10.1109/TPDS.2013.242
  • Filename
    6613989