Predictable execution on many-core processors - TEL - Thèses en ligne Accéder directement au contenu
Thèse Année : 2017

Predictable execution on many-core processors

Exécution prédictible sur processeurs pluri-cœurs

Résumé

During the last 25 years, the need for computational power aboard aircrafts has been constantly growing. To support these evolutions, aircraft manufacturers need to bring massive computational power aboard in order to host more and more applications of increasing size. The emergence of promising technologies such as many-core processors thus appears as a good opportunity to tackle this challenge. Yet they also raise issues regarding predictable execution of software. In this context, we provide an end-to-end integration framework enabling to share and to leverage the parallel computational power of many-core processors safely. By doing so, we pave the way for the design of future embedded avionics computers based on many-core processors. More precisely, we propose a thorough analysis of an existing COTS processor, namely the Kalray MPPA-256, and we identify some of its hared resources to be paths of interference when shared among several applications. We provide an execution model to restrict the access to these resources in order to mitigate their impact on software execution times. We describe in detail how such an execution model can be implemented with a hypervisor which practically provides the expected property of temporal isolation at run-time. Based on this, we formalize a notion of partition which represents the association of an application with a resource budget. Since we aim to execute applications of industrial size, we automatically schedule them on their partitions' resources using Constraint Programming.
Les besoins en puissance de calcul à bord des avions augmentent régulièrement depuis 25 ans. Pour accompagner ces évolutions, les avionneurs doivent concevoir des calculateurs toujours plus puissants devant héberger des applications toujours plus massives et nombreuses. L'émergence de technologies prometteuses telles que les processeurs pluri-cœurs semble ainsi être une bonne opportunité pour répondre à ces attentes mais présente également de nouveaux défis pour l'exécution prédictible de logiciel. Dans ce contexte, nous proposons un atelier d'intégration de bout en bout qui permet le partage et l'exploitation de la puissance de calcul parallèle d'une cible pluri-cœurs avec des applications contraintes, réalisant ainsi un premier pas vers la conception de calculateurs avioniques à base de processeurs pluri-cœurs. Plus précisément, nous proposons une analyse détaillée d'un processeur sur étagère, le Kalray MPPA-256, et identifions certaines de ses ressources partagées comme étant les points de contention réduisant la prédictibilité lors d'exécutions parallèles. Pour résoudre ce problème, nous définissons formellement un modèle d'exécution isolant temporellement les applications concurrentes. Son implantation est réalisée au sein d’un hyperviseur qui garantit le respect des comportements attendus en-ligne. Nous formalisons une notion de partition comme l'association d'une application avec un budget de ressources matérielles. Considérant des applications industrielles de grande taille, nous calculons automatiquement l'ordonnancement et le placement d'une application sur les ressources de sa partition en utilisant la programmation par contraintes.
Fichier principal
Vignette du fichier
DTIM17057.1499756772.pdf (3.62 Mo) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

tel-01700758 , version 1 (05-02-2018)

Identifiants

  • HAL Id : tel-01700758 , version 1

Citer

Quentin Perret. Predictable execution on many-core processors. Electronics. INSTITUT SUPERIEUR DE L’AERONAUTIQUE ET DE L’ESPACE (ISAE); UNIVERSITE DE TOULOUSE, 2017. English. ⟨NNT : ⟩. ⟨tel-01700758⟩

Collections

ONERA
125 Consultations
294 Téléchargements

Partager

Gmail Facebook X LinkedIn More