Architectures Multicœurs

(ref.005007A)

2 jours

Objectifs

  • Le principal objectif de cette formation est de permettre aux participants d’appréhender l’évolution des architectures monoprocesseur vers les dernières architectures avancées Multi-Cœurs et Multi-Cluster
  • Comprendre les architectures multi processing
  • Comprendre les avantages et inconvénients des architectures multiprocessing
  • Comprendre les différences entre le multiprocesseur et le Multi-Cœurs
  • Comprendre les différents types de mise en œuvre
  • Une vision complète de l’amélioration de performance des plateformes Multi-Cœurs
  • Devenir familier avec le vocabulaire utilisé dans les systèmes multiprocessing et Multi-Cœurs
  • Étudier des exemples d’architectures Multi-Coeurs existants sur les dernières versions de composants Freescale et ARM

Prérequis

  • Expérience en programmation C
  • La connaissance des mécanismes de base d'un microcontroleur est recommandée

Configurations

Contenu

Evolution des architectures du Monoprocesseur vers les Multi-Cœurs

Justification des architectures Multi-Cœurs

Les enjeux des architectures Multi-Cœurs

Les mécanismes Hardware

Les mécanismes Software

Les mécanismes OS

Introduction

Avantages des architectures Multiprocesseurs

Implémentation Software

Les limites hardware des architectures Multiprocesseurs

Les nouveaux enjeux software des architectures Multiprocesseurs

Les différentes utilisations d’une plateforme Multiprocesseur

Limites des architectures Multiprocesseurs

Des exemples seront basés sur:

  • Cœur e500v2 Freescale (Plateforme QorIQ P2)
  • ARM Cortex-A8

Introduction

Les aspects clés

Avantages des architectures Multi-Cœurs

Nouveautés Hardware pour faciliter la gestion software

Multi-Cœurs vs. Multiprocesseur

Des exemples seront basés sur:

  • Cœur e500mc Freescale (Plateforme QorIQ P4)
  • ARM Cortex-A9MP

Multi-threading

Multiprocessing Asymétrique

Multiprocessing Symétrique

Problèmes de communication et de synchronisation sur les architectures multiprocessing

Solutions de communication et de synchronisation sur les architectures multiprocessing

  • Mécanismes d’accès exclusifs ARM
  • Mécanismes d’accès mémoire critique Freescale

Exemples d’implémentation:

  • Configuration des fonctionnalités SMP sur Linux (affinité des processeurs)
  • Examiner l’exécution de threads dans un système Linux SMP

Partition Mémoire

Mémoire partagée

Accélération Hardware pour les accès mémoires

Eviter les goulots d’étranglement dues aux interconnexions

Les périphériques orientés Multi-Cœurs

Des exemples seront basés sur:

  • Cœur e5500 Freescale (Plateforme QorIQ P5)
  • L’architecture ARM Cortex-A15MP Cortex-A7MPbigLITTLE

Qu’est-ce que la Virtualisation?

Le mode Hypervisor et privilèges

Les atouts majeurs de la virtualisation

Implémentation Hardware de la virtualisation

Impacts de la virtualisation pour l’architecture logicielle

Des exemples seront basés sur:

  • Cœur e6500 Freescale (Plateforme QorIQ T2)
  • L’architecture ARM Cortex-A15MP Cortex-A7MPbigLITTLE

Notes

  • Les supports de cours seront fournis sur papier ou en format électronique à chaque participant pendant la formation