Thèse soutenue

L'apprentissage machine pour l'estimation du temps

FR  |  
EN
Auteur / Autrice : Abderaouf Nassim Amalou
Direction : Isabelle PuautÉlisa Fromont
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 12/12/2023
Etablissement(s) : Université de Rennes (2023-....)
Ecole(s) doctorale(s) : École doctorale Mathématiques, télécommunications, informatique, signal, systèmes, électronique (Rennes ; 2022-....)
Partenaire(s) de recherche : Laboratoire : Institut national de recherche en informatique et en automatique (France). Unité de recherche (Rennes, Bretagne-Atlantique) - PACAP - LACODAM
Jury : Président / Présidente : Olivier Sentieys
Examinateurs / Examinatrices : Smail Niar
Rapporteurs / Rapporteuses : Claire Pagetti, Jalil Boukhobza

Résumé

FR  |  
EN

L'estimation du temps d'exécution des programmes est une tâche clé mais difficile, rendue encore plus complexe par la croissance de la complexité et l'insuffisance de la documentation des architectures de processeurs modernes. Bien que les méthodes traditionnelles comme les simulateurs précis au cycle soient exactes, elles sont également longues et nécessitent une compréhension approfondie de l'architecture du processeur. Pour aborder ces limitations, une nouvelle approche basée sur les données et utilisant des techniques d'apprentissage automatique a été développée. Cependant, bien que les modèles d'apprentissage automatique existants offrent des estimations rapides, ils sont principalement adaptés à des architectures simples avec des temps d'instruction constants. Ce document vise à développer de nouvelles méthodes d'apprentissage automatique pour des processeurs complexes et non documentés en introduisant la prise en compte du contexte dans les modèles de timing basés sur l'apprentissage automatique. Une approche novatrice traitant les séquences d'instructions comme un langage naturel et emploie des algorithmes d'apprentissage automatique avancés tels que les réseaux Long Short-Term Memory et les Transformers. Ceci permet au modèle de prendre en compte des caractéristiques complexes telles que les effets de cache et de pipeline, améliorant la précision pour les temps d'exécution moyens et pires cas.