Performance analysis and models for collocated VMs running on multi-core physical machines - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Reports (Research Report) Year : 2014

Performance analysis and models for collocated VMs running on multi-core physical machines

Abstract

Next generation high performance computers will massively use virtualization as a way to share hardware resources between multiple applications and to provide flexible mechanisms for fault tolerance and energy optimisation. In this context, understanding the performance behavior of virtual machines and the interference between them is a major scientific challenge that will allow a more efficient usage of resources. The first step is to characterize CPU usage sharing and to propose a performance model for virtual machines. Nonetheless, focusing on the sharing of a single CPU core is no more possible as next generation high performance machines will contain a large number of cores. Moreover, as these cores share micro-architectural resources e.g. caches, using a single core performance model is not sufficient as inter-core interference can happen. Finally, to be able to use such a model in large scale infrastructures as Clouds or high performance computers, the model must be lightweight to simulate the behavior of tens of thousands physical machines hosting hundreds of thousands virtual machines (VMs). In this paper, we present an in-depth analysis of the performance of collocated VMs. By running our experiments on the Grid'5000 testbed, we were able to evaluate 2 processor families for a total of 6 different processor models. We have systematically explored the effect of collocation by testing all the different VCPU to CPU mapping while taking into account micro-architectural components (shared caches and NUMA nodes). We also explored the effect of multi-core virtual machines. Based on these experiments, we evaluate 8 lightweight performance models and observe that the virtual machine performance can be accurately predicted using a model that takes into account the number of VMs on the core and on the related NUMA node (with less than 8% error). Finally, we validate our models on several processors and on both single and multi-(virtual)-cores VM. Using this model, we can increase the accuracy of the virtualization layer of the general purpose distributed system simulator SimGrid and improve it's usability to simulate (HPC) Clouds. These results may also be used to improve VM placement algorithms.
La prochaine génération d'ordinateur haute performance (HPC) utilisera massivement la virtualisation comme un moyen pour partager les ressources matérielles entre plusieurs applications et également pour fournir des mécanismes flexibles pour la tolérance aux fautes ainsi que l'optimisation énergétique. Dans ce contexte, comprendre comment se comporte la performance des machines virtuelles et les interférences entre elles est un défi scientifique majeur qui permettra d'aller vers un utilisation plus efficace des ressources. La première étape est la caractérisation du partage de processeur et d'en proposer un modèle de performance pour les machines virtuelles. Mais, se concentrer sur le partage d'un processeur unique n'est plus possible. En effet, les prochaines générations d'ordinateur haute performance contiendront un très large ensemble de coeurs. De plus, comme ces coeurs partages des ressources micro-architecturales, e.g. caches, utilisé un modéle de performance d'un coeur unique n'est pas suffisant car il ne capturerai pas les interferences entre coeurs. Finalement, pour pouvoir utiliser un tel modèle à l'échelle d'infrastructures large échelle tel que les Clouds ou les ordinateurs HPC, le modèle doit être légé pour pouvoir simuler des dizaines de milliers de machines physiques hébergeant des centaines de milliers de machines virtuelles. Dans ce papier, nous présentons une analyse en profondeur des performances de machines virtuelles colocalisées i.e. s'exécutant sur la même machine physique. En exécutant nos expérimentations sur le banc d'essai Grid'5000, nous avons pu évaluer 2 familles de processeurs pour un total de 6 différents modèles de processeurs. Nous avons exploré systématiquement l'effet de la colocalisation en testant tous les différentes placements VCPU vers CPU tout en prenant en compte les composants micro-architecturaux (caches partagés et NUMA nodes). Nous avons également exploré l'effet des machines virtuelles qui ont plusieurs coeurs. En se basant sur ces expérimentations, nous avons évalué 8 modèles légés de performance et observé que la performance d'une machine virtuelle peut être précisément prédite en utilisant un modèle qui prend en compte le nombre de machines virtuelles sur le coeur et le nombre de machines virtuelles sur la NUMA Node (avec un taux d'erreur inférieur à 8%). Finalement, nous avons évalué nos modèles sur plusieurs processeurs et sur des machines virtuelles avec un ou plusieurs processeurs virtuels. En utilisant ce modèle, nous pourrons accroître la précision de la couche de virtualisation du simulateur générique pour les systèmes distribués, SimGrid mais également sa capacité à simuler des Clouds (haute performance). Nos résultats peuvent également être utilisés pour améliorer les algorithmes de placement de machines virtuelles.
Fichier principal
Vignette du fichier
RR-8473.pdf (998.09 Ko) Télécharger le fichier
Origin : Files produced by the author(s)
Loading...

Dates and versions

hal-00945881 , version 1 (18-02-2014)

Identifiers

  • HAL Id : hal-00945881 , version 1

Cite

Laurent Pouilloux, Jonathan Rouzaud-Cornabas. Performance analysis and models for collocated VMs running on multi-core physical machines. [Research Report] RR-8473, INRIA. 2014, pp.30. ⟨hal-00945881⟩
376 View
276 Download

Share

Gmail Facebook X LinkedIn More