Doctorant F/H Ordonnancement des E/S adapté aux applications dans les systèmes HPC

Type de contrat : CDD

Niveau de diplôme exigé : Bac + 5 ou équivalent

Fonction : Doctorant

A propos du centre ou de la direction fonctionnelle

Le centre Inria de l’université de Bordeaux est un des neuf centres d’Inria en France et compte une vingtaine d’équipes de recherche. Le centre Inria est un acteur majeur et reconnu dans le domaine des sciences numériques. Il est au cœur d'un riche écosystème de R&D et d’innovation : PME fortement innovantes, grands groupes industriels, pôles de compétitivité, acteurs de la recherche et de l’enseignement supérieur, laboratoires d'excellence, institut de recherche technologique…

Contexte et atouts du poste

Le calcul haute performance (HPC) joue un rôle essentiel dans l’avancement scientifique dans des domaines tels que l’intelligence artificielle, la modélisation climatique, et l’ingénierie, en fournissant la puissance de calcul nécessaire pour traiter de vastes ensembles de données. Dans les systèmes HPC, les applications s’exécutant sur les nœuds de calcul accèdent aux données via des systèmes de fichiers parallèles (PFS) comme Lustre ou BeeGFS. Ces systèmes répartissent les données sur plusieurs dispositifs de stockage afin de permettre un accès simultané, indispensable pour atteindre un débit élevé. Toutefois, un écart persistant entre la vitesse de traitement et celle des entrées/sorties (E/S) conduit de nombreuses applications HPC à passer une part importante de leur temps d’exécution sur des opérations d’E/S, ce qui limite leur efficacité.

La performance des E/S dépend fortement de la manière dont les applications accèdent au système de fichiers, notamment en ce qui concerne leurs schémas d’accès. Des facteurs tels que le nombre de fichiers manipulés, la taille des requêtes ou le partage des données entre processus ont un impact significatif sur le rendement. De plus, lorsque plusieurs applications accèdent simultanément au système de fichiers parallèle, leurs schémas d’accès peuvent interférer entre eux et dégrader la performance globale. Cette interférence n’est pas uniforme : certaines applications peuvent en perturber d’autres, selon leurs caractéristiques d’accès. Cette contention peut allonger les temps d’exécution, mobiliser les ressources de calcul plus longtemps et augmenter la variabilité des performances. Dans certains cas, une application mal optimisée peut accaparer une grande partie de la bande passante, ralentissant les autres et diminuant l’efficacité globale du système. Étant donné que ces effets restent encore difficilement prévisibles, il devient crucial de mettre en place des stratégies d’ordonnancement des E/S plus intelligentes et sensibles au comportement des applications dans les environnements HPC.

Mission confiée

L’objectif de cette thèse est d’appliquer des stratégies d’ordonnancement des E/S afin de réduire la contention et d’améliorer les performances d’entrée/sortie dans les systèmes HPC. Elle sera réalisée en collaboration entre deux équipes d’Inria (TADaaM, à Bordeaux, et KerData, à Rennes), dans le cadre du projet NumPEx, qui vise à construire la pile logicielle des futurs systèmes français à l’échelle exaflopique.

Principales activités

Atteindre cet objectif implique de traiter différentes problématiques, présentées ci-dessous.

Identification des schémas d’accès courants à partir de grandes bases de données : Des jeux de données publics contenant des traces Darshan issues de systèmes HPC peuvent être utilisés à cette fin. Ces traces couvrent une grande partie des travaux exécutés sur un système pendant une période donnée et fournissent des compteurs agrégés pour chaque fichier accédé par un travail. L’objectif de cette activité est d’étudier ces jeux de données afin d’identifier des schémas communs de comportement des applications. Ce travail s’appuiera sur des outils existants tels que MOSAIC. En fonction du nombre de schémas identifiés, des techniques de regroupement (clustering) pourront être utilisées pour les classer en catégories représentatives.

Étude de l’interférence entre les schémas d’accès courants : L’étape suivante consistera à évaluer comment ces schémas d’accès interagissent entre eux. Des expérimentations seront menées sur différents systèmes afin de déterminer l’impact des schémas spécifiques les uns sur les autres ainsi que sur les performances globales du système. L’objectif est d’identifier quels schémas dégradent la performance d’autres schémas ou du système dans son ensemble. Compte tenu du nombre potentiellement important de cas à analyser et de la nature chronophage des expérimentations sur les E/S, une méthodologie rigoureuse et efficace sera nécessaire pour explorer cet espace de paramètres de manière optimale.

Ordonnancement des E/S sensible aux schémas d’accès : À partir des résultats obtenus lors de l’étude des interférences, une stratégie d’ordonnancement des E/S sera proposée, tenant compte des caractéristiques des applications et de leur impact sur les autres applications. Une piste consiste à adapter une méthode d’ordonnancement existante (IO-Sets) initialement conçue pour des applications périodiques avec des fréquences d’exécution variables. Le principe clé est d’éviter que des applications incompatibles n’accèdent simultanément au système de fichiers. Cette approche paraît prometteuse, mais des études supplémentaires seront nécessaires pour déterminer comment regrouper les applications et comment calculer la priorité de chaque groupe. Par ailleurs, la stratégie proposée devra prendre en compte les comportements temporels des E/S lors de l’organisation des applications en ensembles d’ordonnancement.

Compétences

D'autres aspects pouvant être pris en compte lors de la sélection sont :

  • avoir obtenu un Master dans un domaine lié au calcul haute performance ;

  • avoir une certaine expérience en recherche (stages) ;

  • avoir des compétences en communication : être capable de bien s’exprimer en réunion, notamment en anglais ; 

  • avoir des compétences techniques : programmation bas-niveau (C, C++, etc.), script (Bash, Python, etc.), utilisation de Linux en ligne de commande et via SSH, analyse de données (Pandas, etc.), rédaction d’articles scientifiques avec LaTeX.

Avantages

  • Restauration subventionnée
  • Transports publics remboursés partiellement
  • Congés: 7 semaines de congés annuels + 10 jours de RTT (base temps plein) + possibilité d'autorisations d'absence exceptionnelle (ex : enfants malades, déménagement)
  • Possibilité de télétravail et aménagement du temps de travail
  • Équipements professionnels à disposition (visioconférence, prêts de matériels informatiques, etc.)
  • Prestations sociales, culturelles et sportives (Association de gestion des œuvres sociales d'Inria)
  • Accès à la formation professionnelle
  • Sécurité sociale

Rémunération

La rémunération sera de 2200€ brut en 2025, puis 2300€ brut en 2026