Kevin Pouget - Programming-Model Centric Debugging for Multicore Embedded Systems

09:30
Monday
3
Feb
2014
Place: 
Organized by: 

Kevin Pouget

Speaker: 

Kevin Pouget

Teams: 

- Lieu de soutenance :

Amphithéâtre F22, dans le bâtiment F de l’UFR IM²AG, 60 rue de la Chimie, Domaine Universitaire de Saint-Martin-d’Hères

- Jury :

  • M. Radu PRODAN, University of Insbruck, Rapporteur
  • M. François BODIN, Irisa, Rapporteur
  • M. Rainer LEUPERS, RWTH AACHEN UNIVERSITY, Examinateur
  • M. Noël DE PALMA, University Joseph Fourier, Examinateur
  • M. Miguel SANTANA, STMicroelectronics, Codirecteur de thèse
  • M. Jean-François MEHAUT, UJF-CEA/LIG, Directeur de thèse

Dans cette thèse, nous proposons d’étudier le débogage interactif d’applications pour les systèmes embarqués MPSoC (Multi-Processor System on Chip). Une étude de l’état de l’art a montrée que la conception et le développement de ces applications reposent de plus en plus souvent sur des modèles de programmation et des frameworks de développement. Ces environnements définissent les bonnes pratiques, tant au niveau algorithmique qu’au niveau des techniques de programmation. Ils améliorent ainsi le cycle de développement des applications destinées aux processeurs MPSoC. L’utilisation de modèles de programmation ne garantit cependant pas que les codes pourront être exécutés sans erreur, en particulier dans le cas de la programmation dynamique, où ils offrent très peu d’aide a la vérification. Notre contribution pour résoudre ces challenges consiste en une nouvelle approche pour le débogage interactif, appelée Programming Model-Centric Debugging, ainsi qu’ ! une implémentation d’un prototype de débogueur. Le débogage centré sur les modèles rapproche le débogage interactif du niveau d’abstraction fourni par les modèles de programmation, en capturant et interprétant les évènements générés pendant l’exécution de l’application. Nous avons appliqué cette approche sur trois modèles de programmation, basés sur les composants logiciels, le dataflow et la programmation d’accélérateur par kernels. Ensuite, nous détaillons comment nous avons développé notre prototype de débogueur, basé sur GDB, pour la programmation de la plate-forme STHORM de STMicroelectronics. Nous montrons aussi comment aborder le débogage basé sur les modèles avec quatre études de cas : un code de réalité augmentée construit à l’aide de composants, une implémentation dataflow d’un décodeur vidéo H.264 et deux applications de calcul scientifique.