Gestion de données persistantes efficace pour des serveurs hybrides avec mémoire non-volatile
| Auteur / Autrice : | Ana Khorguani |
| Direction : | Noël De Palma, Thomas Ropars |
| Type : | Thèse de doctorat |
| Discipline(s) : | Informatique |
| Date : | Soutenance le 29/11/2023 |
| Etablissement(s) : | Université Grenoble Alpes |
| Ecole(s) doctorale(s) : | École doctorale Mathématiques, sciences et technologies de l'information, informatique (Grenoble, Isère, France ; 1995-....) |
| Partenaire(s) de recherche : | Laboratoire : Laboratoire d'informatique de Grenoble (Isère, France ; 2007-....) |
| Equipe de recherche : Équipe de recherche Efficient and robust distributed systems (Grenoble ; 2020-2024) | |
| Jury : | Président / Présidente : Sihem Amer-Yahia |
| Examinateurs / Examinatrices : Daniel Hagimont, Yves Denneulin | |
| Rapporteurs / Rapporteuses : Pascal Felber, Gaël Thomas | |
| DOI : | 10.70675/04f88989zd74fz4912zac5az5aa3f250f3be |
Mots clés
Mots clés contrôlés
Résumé
Les technologies de mémoire non-volatile (NVMM) offrent une excellente opportunité pour créer des programmes rapides et tolérants aux fautes, car elles fournissent un stockage persistant utilisable comme mémoire principale. Cependant, puisque les caches du processeur restent volatiles, des solutions sont nécessaires pour récupérer un état cohérent à partir de la NVMM après un crash. Dans cette thèse, nous proposons des techniques de sauvegarde de points de reprise en NVMM afin de rendre les programmes multi-threads tolérants aux fautes. Nous nous concentrons principalement sur l'optimisation des performances en fonctionnement normal et étudions des solutions qui écrivent périodiquement les structures de données persistantes dans la NVMM.Notre premier travail, ResPCT, se concentre sur une architecture mémoire où une seule copie des données est enregistrée directement dans la NVMM. ResPCT utilise la journalisation In-Cache-Line pour suivre efficacement les modifications pendant l'exécution du programme et pour restaurer un état cohérent après un crash. L'API ResPCT permet aux programmeurs de positionner des points de redémarrage dans leur programme, ce qui simplifie l'identification de l'état du programme persistant et peut également contribuer à améliorer les performances. Des expériences menées avec des benchmarks et des applications représentatives montrent que ResPCT surpasse les solutions de l'état de l'art.L'évaluation de ResPCT montre que s'appuyer sur une seule copie des données en NVMM peut limiter les performances. Par conséquent, dans la deuxième partie de notre étude, nous examinons une approche alternative qui intègre la DRAM dans l'architecture mémoire. Le système proposé implique de maintenir une copie de travail des données dans la DRAM, ce qui permet au programme de fonctionner sur cette copie plutôt que sur la version plus lente stockée dans la NVMM. Dans ce travail, nous comparons plusieurs techniques d'écriture des données de la DRAM vers la NVMM lors de la sauvegarde d'un point de reprise. Nos résultats montrent que même si certaines techniques présentent des avantages par rapport aux autres, le choix de la méthode la plus adaptée pour transférer les modifications de la DRAM vers la NVMM dépend des caractéristiques spécifiques des applications.