Bienvenue sur ArTeMIS, la plate-forme d’archivage et de diffusion des thèses et mémoires de l’ISAE-SUPAERO.
Vous y trouverez les thèses soutenues à Supaero depuis 1979 et à l’ISAE-SUPAERO depuis 2007 ayant fait l´objet d´une numérisation ou d´un dépôt électronique et pour lesquelles nous avons obtenu l’autorisation de diffusion.
???menu.label.??? > ???menu.label..??? fr| en
Artemis
  • A propos
  • Contact
  • Recherche
  • simple
  • Tous les mots:
  • avancée
  • Consulter par
  • auteur
  • année
  • thématique
  • laboratoire
  • équipe de recherche
  • école doctorale
Version imprimable
Analyse et contrôle des interférences liées à la cohérence de cache dans les multi-coeurs COTS
(Analysis and control of cache coherence interference in multi-core cots platforms)

Sensfelder, Nathanaël
2021-03-31

Institut Supérieur de l'Aéronautique et de l'Espace
Directeur(s) de thèse:  Pagetti, Claire; Brunel, Julien
Laboratoire :  Département Traitement de l’information et systèmes - DTIS (depuis 2017)
Ecole doctorale :  Mathématiques, Informatique et Télécommunications de Toulouse -MITT

Classification : Informatique
Accès : Texte intégral

Mots-clés : Multi-Coeurs, Interférence, Cache cohérence

Résumé :  L'objectif de cette thèse est d'offrir des outils d'aide à la certification aéronautique de processeurs COTS multi-cœurs. Ces architectures sont par nature parallèles et peuvent de ce fait largement améliorer les performances de calcul. Cependant elles souffrent d'un grand manque de prédictibilité, au sensoù calculer les pires d'exécution même pour des programmes simples est un problème complexe, voire impossible dans le cas général. En effet, les cœurs partagent l'accès à presque toutes les ressources ce qui provoque des conflits(qualifiés d'interférences) entrainant des variations non maîtrisées des temps d'exécutions. Parmi les mécanismes complexes d'un processeur multi-coeur se trouve la cohérence de caches. Celle-ci assure que tous les cœurs lisant ou écrivant dans un même bloc mémoire ne peuvent pas aveuglement ignorer les modifications appliquées par les autres. Afin de maintenir la cohérence de caches, le processeur suit un protocole pré-déterminé qui définit les messages à envoyer en fonction des actions d'un cœur ainsi que les actions à effectuer lors de la réception du message d'un autre cœur.Cette thèse porte sur l'identification des interférences générées par les mécanismes de cohérence de caches ainsi que sur les moyens de prédiction de leurs effets sur les applications en vue de réduire les effets négatifs temporels. La première contribution adresse les ambiguïtés dans la compréhension que les applicants ont de la cohérence de cache réellement présente dans l'architecture. En effet, la documentation des architectures ne fournit généralement pas suffisamment de détails sur les protocoles. Cette thèse propose une formalisation des protocoles standards, ainsi qu'une stratégie, reposant sur les micro-benchmarks, pour clarifier les choix d'implémentation du protocole de cohérence présent sur l'architecture. Cette stratégie a notamment été appliquée sur le NXP QorIQ T4240. Une fois le protocole correctement identifié, la seconde contribution consiste à réaliser une description bas-niveau de l'architecture en utilisant des automates temporisés afin de représenter convenablement les micro-comportements et comprendre clairement comment le protocole de cohérence de cache agit. Ainsi,un framework de génération de modèles génériques a été développé, capable de supporter plusieurs protocoles de cohérence de cache et de représenter différents agencements d'architectures afin de mieux correspondre à l'architecture choisie par le postulant. La troisième contribution explique comment utiliser cette représentation de l'architecture pour exhiber les interférences. Elle propose une stratégie pour détailler les causes et effets de chaque interférence liée à la cohérence de caches sur les programmes.Commençant par une simple analyse de temps d'exécution, les résultats descendent jusqu'au niveau des instructions pour indiquer comment chaque instruction génère et souffre des interférences. L'objectif étant alors de fournir suffisamment d'information à l'appliquant à la fois pour la certification, mais aussi pour définir une stratégie d'atténuation et de maîtrise des effets temporels.Ainsi, cette thèse fournit l'appliquant des outils pour comprendre les mécanismes de cohérence de cache présent sur une architecture donnée et pour exhiber les interférences associées.

Résumé (anglais) : This thesis proposes tools to help in the certification of multi-coreprocessors for use in aeronautical systems. While the parallel nature of multi-core processors can greatly improve computation speeds, it also makesthem difficult to predict, preventing their use in critical environments. Indeed, in such processors, the cores share access to nearly all resources and this causes conflicts, or interference, which lead to seemingly randomvariation in the execution time. Among the complex mechanisms prone to interference is cache coherence, which ensures that cores that use a same atomic memory block cannot blindly override the modifications made by another core and that all cores are made aware of all modifications. To achieve cache coherence, the processor automatically follows a predetermined protocol which defines messages to be generated according to the actions of a core, as well as the actions to be performed when another core’s message is received.The focus of this thesis is to identify the interference generated by the cache coherence mechanisms and provide a way to predict their effects on the applications, as a first step toward their mitigation. The first contribution made is to address the ambiguities in the understanding applicants have of the coherence protocol implemented on their chosen architecture. Indeed,architecture documentation does not generally offer sufficient details on their cache coherence protocol. This thesis proposes a formalization of some standard cache protocols and a strategy relying on micro-benchmarks in order to clarify the implementation details of the architecture’s protocol. This approach is applied to the NXP QorIQ T4240 architecture. Once the protocol has been correctly identified, the second contribution consists in the making of alow-level description of the architecture using timed automata in order to adequately represent the micro-behaviors and understand clearly how the cache coherence protocol acts. In effect, a generic model generation framework has been developed, capable of handling cache coherence protocols as described by the applicant, and to support architectures with different configurations in order to better fit the applicant’s chosen architecture. The third contribution explains how to make use of the timed automata low-level representation of the architecture to expose interference. It proposes a strategy to detail the causes and effects of cache coherence interference on the given programs.Starting from a simple analysis of execution time, the results go down to instruction level, indicating how each instruction generates and suffers from interference. This is intended to provide sufficient information on cache coherence interference to the applicant, both for the purposes of certification and to form the base upon which a mitigation strategy can be started.In effect, this thesis provides the applicant with the means to understand the cache coherence mechanisms used by their chosen architecture and to expose the interference they generate.


Langue : Français
Exporter au format XML
© 2006-2010 ORI-OAI
thèses ISAE,theses ISAE,thèse ISAE,these ISAE, thèses Institut Supérieur de l'Aéronautique et de l'Espace,thèse Institut Supérieur de l'Aéronautique et de l'Espace,,theses Institut Supérieur de l'Aéronautique et de l'Espace,,these Institut Supérieur de l'Aéronautique et de l'Espace, thèses aéronautique,thèse aéronautique,these aéronautique,,theses aéronautique, Artemis,Arthemis, thèses DAEP,thèses DMIA,thèses DMSM, thèses DEOS,thèses CAS,thèses LACS, thèse DAEP,thèse DMIA,thèse DMSM, thèse DEOS,thèse CAS,thèse LACS, these DAEP,these DMIA,these DMSM, these DEOS,these CAS,these LACS, theses DAEP,theses DMIA,theses DMSM, theses DEOS,theses CAS,theses LACS, thèses toulouse,thèse toulouse,theses toulouse,these toulouse, thèses supaero,thèse supaero,theses supaero,these supaero, thèses école nationale supérieure d'aéronautique,thèse école nationale supérieure d'aéronautique,theses école nationale supérieure d'aéronautique,these école nationale supérieure d'aéronautique, thèses ingénieur,thèse ingénieur,theses ingénieur,these ingénieur, phd thesis ISAE, phd thesis Institut Supérieur de l'Aéronautique et de l'Espace, phd thesis aéronautics, phd thesis DAEP,phd thesis DMIA,phd thesis DMSM,phd thesis DEOS,phd thesis CAS,phd thesis LACS, phd thesis toulouse,phd thesis supaero,phd thesis école nationale supérieure d'aéronautique,