Aller au contenu principal

Théophile Bastian

Lundi 9 Décembre 2024

Construction automatique de modèles micro-architecturaux de CPUs pour l'étude de performance de noyaux de calcul

Résumé

Qu'il s'agisse de calculs massifs distribués sur plusieurs baies, de calculs en environnement contraint — comme de l'embarqué ou de l'edge computing — ou encore de tentatives de réduire l'empreinte écologique d'un programme fréquemment utilisé, de nombreux cas d'usage justifient l'optimisation poussée d'un programme. Celle-ci s'arrête souvent à l'optimisation de haut niveau (algorithmique, parallélisme, …), mais il est possible de la pousser jusqu'à une optimisation bas-niveau, s'intéressant à l'assembleur généré en regard de la microarchitecture du processeur précis utilisé.

Une telle optimisation demande une compréhension fine des aspects à la fois logiciels et matériels en jeu, et n'est bien souvent accessible qu'aux experts du domaine. Les code analyzers (analyseurs de code), cependant, permettent d'abaisser le niveau d'expertise nécessaire pour accomplir de telles optimisations, en automatisant une partie du travail de compréhension des problèmes de performance rencontrés. Ces mêmes outils permettent également aux experts d'être plus efficaces dans leur travail.

Dans cette présentation, nous étudierons les principaux facteurs limitants de la performance d'un processeur, sur lesquels la précision des outils de l'état de l'art est bien souvent inégale. Nous apportons, sur chacun de ces facteurs limitants, une contribution nouvelle : automatisation de l'obtention d'un modèle du backend, étude manuelle du frontend en vue de l'automatisation de son modèle, et extraction automatique des dépendances à travers la mémoire d'un noyau de calcul. Nous apportons également une étude systématique et automatisée des performances de prédiction de différents code analyzers de l'état de l'art.

Date et lieu

Lundi 9 Décembre à 14:00
Bâtiment IMAG, Salle de séminaire 2
en visio

Direction de thèse

Fabrice RASTELLO
Equipe CORSE

Publié le 6 décembre 2024

Mis à jour le 21 janvier 2025