Gestion déterministe du comportement temporel des caches pour systèmes temps réel

par Farouk Hebbache

Projet de thèse en Informatique

Sous la direction de Laurent Pautet, Mathieu Jan et de Florian Brandner.

Thèses en préparation à Paris Saclay , dans le cadre de École doctorale Sciences et technologies de l'information et de la communication (Orsay, Essonne ; 2015-....) , en partenariat avec Institut CEA LIST (laboratoire) et de Télécom ParisTech (établissement de préparation de la thèse) depuis le 01-11-2016 .


  • Résumé

    Les systèmes temps réel deviennent de plus en plus exigeants, nécessitant de plus en plus de puissance de traitement. Il n'est souvent pas possible d'utiliser simplement du matériel plus puissant afin de répondre aux exigences de performance. Le problème principal ici est que l'analyse WCET (Worst-Case Execution Time) doit pouvoir tirer parti du matériel plus puissant -et donc généralement plus complexe-, ce qui abaisse généralement la précision de l'analyse. La prédiction précise du comportement complexe des caches de données et d'instructions est particulièrement difficile. Encore plus lorsque ces caches sont partagés entre plusieurs tâches temps réel, potentiellement en cours d'exécution sur des cœurs de processeurs différents. Le but de ce projet est de fournir un moyen de gérer les caches d'instructions et de données globalement au niveau du système en utilisant des techniques matérielles et logicielles. L'objectif est de réduire le pessimisme causé par les changement de tâches au cours du test d'analyse WCET et de l'ordonnancement en gérant explicitement le contenu du cache, même pour les tâches qui ne sont pas en cours d'exécution.

  • Titre traduit

    Time-Predictable Cache Management for Real-Time Systems


  • Résumé

    Real-time systems are becoming more and more demanding, requiring more and more processing power. It is often not possible to simply use more powerful hardware in order to meet the performance requirements. The main problem here is that the Worst-Case Execution Time (WCET) analysis has to be able to take advantage of the more powerful – and thus usually more complex – hardware, which usually lowers the analysis' precision drastically. The precise prediction of the complex behavior of data and instruction caches is particularly challenging. Even more so when these caches are shared among multiple real-time tasks, potentially running on different processor cores. The goal of this project is to provide a means to manage instruction and data caches globally at the system level using both hardware and software techniques. The aim is to reduce the pessimism caused by task switches during the WCET analysis and schedulability test by explicitly managing the cache contents – even for those tasks that are currently not executing.