Utilisation de méthodes statistiques pour modéliser et estimer la variabilité temporelle des temps d'exécution des programmes exécutés sur des architectures multicurs
Auteur / Autrice : | Mohamed Amine Khelassi |
Direction : | Eva Dokladalova |
Type : | Projet de thèse |
Discipline(s) : | Informatique |
Date : | Inscription en doctorat le 01/10/2021 |
Etablissement(s) : | Université Gustave Eiffel |
Ecole(s) doctorale(s) : | École doctorale Mathématiques, Sciences et Technologies de l'Information et de la Communication |
Partenaire(s) de recherche : | Laboratoire : LIGM - Laboratoire d'informatique Gaspard-Monge |
Equipe de recherche : LRT - Logiciels, Réseaux, Temps Réels |
Mots clés
Résumé
Bien que les processeurs multicurs augmentent la puissance de calcul, les temps d'exécution de programme exécutés sur des processeurs multicurs peuvent présenter de grandes variations entre leurs plus petites et leurs plus grandes valeurs en raison de caractéristiques telles que les multiples niveaux de caches, la communication par le biais de la mémoire partagée, etc. Cette variabilité temporelle rend l'utilisation de ces processeurs imprévisible et donc dangereuse pour les applications temps réel critiques. L'objectif de la thèse est de traiter le problème de la variabilité temporelle de programmes exécutés sur un processeur multicurs. Par rapport aux méthodes classiques d'estimation du pire temps d'exécution (WCET) d'un programme qui s'intéressent à l'estimation du WCET d'un programme qui a déjà été conçu, la thèse vise à proposer des règles qui permettent de maîtriser et de réduire la variabilité temporelle au niveau de la conception même du programme. L'approche est basée sur l'utilisation de méthodes statistiques et d'apprentissage automatique pour l'analyse de temps d'exécution générés par un ensemble de programmes benchmark (à construire) dans le but de déduire dans un premier temps une relation formelle entre chaque facteur de variabilité et son impact sur le temps d'exécution d'un programme puis dans un deuxième temps de proposer des conditions et des règles de composition pour plusieurs facteurs de variabilité. Enfin, des règles de programmation et d'implémentation pour maîtriser et réduire la variabilité temporelle doivent être proposées, ces règles sont à déduire des relations statistiques proposées entre facteurs de variabilité et temps d'exécution.