Thèse soutenue

Optimisation de l'allocation de la mémoire cache CPU pour les fonctions cloud et les applications haute performance

FR  |  
EN
Auteur / Autrice : Armel Jeatsa Toulepi
Direction : Daniel Hagimont
Type : Thèse de doctorat
Discipline(s) : Informatique et Télécommunications
Date : Soutenance le 11/09/2024
Etablissement(s) : Université de Toulouse (2023-....)
Ecole(s) doctorale(s) : École doctorale Mathématiques, informatique et télécommunications (Toulouse)
Partenaire(s) de recherche : Laboratoire : Institut de Recherche en Informatique de Toulouse (1995-....)
Etablissement délivrant conjointement le doctorat : Institut national polytechnique (Toulouse ; 1969-....)
Jury : Président / Présidente : André-Luc Beylot
Examinateurs / Examinatrices : Daniel Hagimont, Fabienne Boyer, Nikolaos Parlavantzas, Barbe Thystere Mvondo Djob, Noël De Palma
Rapporteurs / Rapporteuses : Fabienne Boyer, Nikolaos Parlavantzas

Résumé

FR  |  
EN

Les services informatiques contemporains reposent principalement sur deux paradigmes majeurs : le cluster computing et le cloud computing. Le premier implique la répartition des tâches de calcul entre différents nœuds qui fonctionnent ensemble comme un seul système, tandis que le second se fonde sur la virtualisation de l'infrastructure informatique qui permet sa fourniture à la demande. Dans le cadre de cette thèse, notre attention se porte sur l'allocation du cache de dernier niveau (LLC) dans le contexte de ces deux paradigmes, en se concentrant spécifiquement sur les applications distribuées et les fonctions FaaS. Le LLC est un espace mémoire partagé et utilisé par tous les cœurs de processeur sur un socket NUMA. Étant une ressource partagée, il est sujet à de la contention qui peut avoir un impact significatif sur les performances. Pour pallier ce problème, Intel a mis en œuvre une technologie dans ses processeurs qui permet le partitionnement et l'allocation de la mémoire cache : Cache Allocation Technology (CAT).Dans ce travail, à l'aide de la technologie CAT, nous examinons d'abord l'impact de la contention du LLC sur les performances des fonctions FaaS. Ensuite, nous étudions comment cette contention dans un sous-ensemble de nœuds d'un cluster affecte les performances globales d'une application distribuée en cours d'exécution. De ces études, nous proposons CASY et CADiA, des systèmes d’allocation intelligents du LLC respectivement pour les fonctions FaaS et pour les applications distribuées. CASY utilise l'apprentissage automatique supervisé pour prédire les besoins en cache d'une fonction FaaS en se basant sur la taille du fichier d'entrée, tandis que CADiA construit dynamiquement le profil d'une application distribuée et effectue une allocation harmonisée sur tous les nœuds en fonction de ce profil. Ces deux solutions nous ont permis d'obtenir des gains de performance allant jusqu'à environ 11% pour CASY, et 13% pour CADiA.