Thèse soutenue

Caches collaboratifs noyau adaptés aux environnements virtualisés

FR  |  
EN
Auteur / Autrice : Maxime Lorrillere
Direction : Pierre SensSébastien Monnet
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 04/02/2016
Etablissement(s) : Paris 6
Ecole(s) doctorale(s) : École doctorale Informatique, télécommunications et électronique de Paris (1992-...)
Partenaire(s) de recherche : Laboratoire : LIP6 (1997-....)
Jury : Examinateurs / Examinatrices : Julien Sopena, Edouard Bugnion, Gilles Muller, Étienne Rivière
Rapporteurs / Rapporteuses : Christine Morin, Vivien Quéma

Mots clés

FR  |  
EN

Résumé

FR  |  
EN

Avec l'avènement du cloud computing, la virtualisation est devenue aujourd'hui incontournable. Elle offre isolation et flexibilité, en revanche elle implique une fragmentation des ressources, et notamment de la mémoire. Les performances des applications qui effectuent beaucoup d'entrées/sorties (E/S) en sont particulièrement impactées. En effet, celles-ci reposent en grande partie sur la présence de mémoire libre, utilisée par le système pour faire du cache et ainsi accélérer les E/S. Ajuster dynamiquement les ressources d'une machine virtuelle devient donc un enjeu majeur. Dans cette thèse nous nous intéressons à ce problème, et nous proposons Puma, un cache réparti permettant de mutualiser la mémoire inutilisée des machines virtuelles pour améliorer les performances des applications qui effectuent beaucoup d'E/S. Contrairement aux solutions existantes, notre approche noyau permet à Puma de fonctionner avec les applications sans adaptation ni système de fichiers spécifique. Nous proposons plusieurs métriques, reposant sur des mécanismes existants du noyau Linux, qui permettent de définir le niveau d'activité « cache » du système. Ces métriques sont utilisées par Puma pour automatiser le niveau de contribution d'un noeud au cache réparti. Nos évaluations de Puma montrent qu'il est capable d'améliorer significativement les performances d'applications qui effectuent beaucoup d'E/S et de s'adapter dynamiquement afin de ne pas dégrader leurs performances.