Thèse en cours

Analyse des Effets des Interférences sur la Prévisibilité Temporelle des Architectures Many-coeurs

FR  |  
EN
Auteur / Autrice : Safae Elamrani
Direction : Mathieu Jan
Type : Projet de thèse
Discipline(s) : Informatique
Date : Inscription en doctorat le 01/10/2022
Etablissement(s) : université Paris-Saclay
Ecole(s) doctorale(s) : École doctorale Sciences et technologies de l'information et de la communication (Orsay, Essonne ; 2015-....)
Partenaire(s) de recherche : Laboratoire : Laboratoire d'intégration des systèmes et des technologies (Gif-sur-Yvette, Essonne ; 2001-....)
Référent : Faculté des sciences d'Orsay

Résumé

FR  |  
EN

Un nombre croissant de systèmes critiques tels que les véhicules autonomes, l'avionique et les dispositifs médicaux sont exécutés sur des architectures comportant un grand nombre de cœurs, et interagissant en temps réel avec leur environnement. Etant donné que les conséquences d'une défaillance de tels systèmes peuvent entrainer des dommages importants, il est nécessaire de développer des méthodes de vérification pour minimiser le risque de défaillance. Une cause typique d'un tel échec est des problèmes temporels. De plus, lorsque des applications critiques multithread sont déployées sur ces architectures many-coeurs, elles peuvent entraîner des délais supplémentaires à cause des contentions. Ce phénomène est appelé interférence, qui est généralement définie comme le résultat d'accès simultanés à des ressources partagées (par exemple, RAM, caches, buffers et interconnexion) par des tâches s'exécutant sur différents cœurs et dans des fenêtres temporelles qui se chevauchent . Par conséquent, le comportement du logiciel contribue en grande partie aux délais d'interférence et doit être analysé en tenant compte du modèle temporel du matériel sous-jacent. L'objectif de cette thèse est de proposer un framework formel et pratique pour la quantification et la réduction des interférences. Deux contributions principales sont attendues : • la modélisation des ressources matérielles sensibles aux interférences telles que les caches, les buffers et les interconnexions à l'aide d'un langage de spécification formel et l'analyse des traces d'exécution générées pour calculer les délais d'interférence. L'application de techniques de profiling ou d'analyse de criticité sur les traces pour capturer les entrelacements critiques des accès aux ressources partagées est cruciale pour alléger la complexité de l'analyse proposée. • concevoir des stratégies logicielles, au niveau du compilateur, pour atténuer les interférences et augmenter la prévisibilité du système. Ces stratégies reposent sur les délais d'interférence résultant de l'analyse de traces afin d'instrumenter le compilateur pour ordonnancer efficacement les accès aux ressources partagées (c'est-`a-dire minimiser les conflits sans compromettre les performances du système).