Thèse soutenue

Contribution à l'amélioration des méthodes d'optimisation de la gestion de la mémoire dans le cadre du calcul haute performance

FR  |  
EN
Auteur / Autrice : Sébastien Valat
Direction : William Jalby
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance en 2014
Etablissement(s) : Versailles-St Quentin en Yvelines

Mots clés

FR

Résumé

FR  |  
EN

L'évolution des architectures des calculateurs actuels est telle que la mémoire devient un problème majeur pour les performances. L'étude décrite dans ce document montre qu'il est déjà possible d'observer des pertes importantes imputables aux mécanismes de gestion de cette dernière. Dans ce contexte, nous nous sommes intéressés aux problèmes de gestion des gros segments mémoire sur les supercalculateurs multicoeurs NUMA de type Tera 100 et Curie. Notre travail est détaillé ici en suivant trois axes principaux. Nous analysons dans un premier temps les politiques de pagination de différents systèmes d'exploitation (coloration de pages, grosses pages. . . ). Nous mettons ainsi en évidence l'existence d'interférences néfastes entre ces politiques et les décisions de placement de l'allocateur en espace utilisateur. Nous complétons donc les études cache/allocateur et cache/pagination par une analyse de l'interaction cumulée de ces composants. Nous abordons ensuite la problématique des performances d'allocation des grands segments mémoire en considérant les échanges entre le système et l'allocateur. Nous montrons ici qu'il est possible d'obtenir des gains significatifs (de l'ordre de 50% sur une grosse application) en limitant ces échanges et en structurant l'allocateur pour un support explicite des architectures NUMA. La description de nos travaux s'achève sur une étude des problèmes d'extensibilité observés au niveau des fautes de pages du noyau Linux. Nous avons ainsi proposé une extension de la sémantique d'allocation afin d'éliminer la nécessité d'effectuer les coûteux effacements mémoire des pages au niveau système