Processeurs multithreads et multicoeurs - Archive ouverte HAL Accéder directement au contenu
Autre Publication Scientifique Techniques de l'Ingénieur Année : 2018

Processeurs multithreads et multicoeurs

Daniel Etiemble

Résumé

L’amélioration des performances de monoprocesseurs s’est principalement appuyée jusqu’au début des années 2000 sur l’augmentation des fréquences d’horloge d’une part, et l’utilisation du parallélisme d’instructions d’autre part. Les instructions SIMD des monoprocesseurs ont permis l’utilisation du parallélisme de données. L’utilisation du parallélisme de threads était réservée aux architectures parallèles : les serveurs et les superordinateurs. Les processeurs multithreads et les processeurs multi-cœurs permettent l’utilisation des trois types de parallélisme (instructions, données et threads). Après un rappel des notions de processus et de thread, nous présentons les processeurs multithreads, qui dotent un processeur physique de plusieurs contextes d’exécution qui se partagent les unités fonctionnelles, les caches et la mémoire. A un processeur physique correspond plusieurs processeurs logiques exécutant chacun un thread. Les trois types de multithreading sont présentés : 1) le multithread gros grain, 2) le multithread grain fin et 3) le multithread simultané. Le multithread grain fin est utilisé dans un certain nombre de processeurs visant les applications de type serveur web, base de données (architectures Niagara de Sun et serveurs Sparc d’Oracle). Le multithread simultané est utilisé dans les processeurs d’Intel, notamment Xeon, et d’IMB (Power5 à Power 9). L’hypertheading d’Intel utilise deux threads, alors que les processeurs Sparc ou IBM ont jusqu’à huit threads. Les processeurs multi-cœurs sont l’implantation sur une seule puce d’un multiprocesseur symétrique ou d’une architecture parallèle avec plusieurs processeurs. Ils sont une solution pour continuer l’augmentation des performances sans augmenter la consommation énergétique. Avec des exemples des processeurs Sparc d’Oracle, Xeon d’Intel et Power d’IBM, les techniques d’accès aux données (hiérarchie de caches et accès à la mémoire principale) sont détaillés. La taille des caches de dernier niveau implique un découpage en plusieurs blocs, reliés par un réseau d’interconnexion : anneau ou grille 2D. Les systèmes mémoire des multi-cœurs et les clusters de multi-cœurs sont également présentés.
Fichier non déposé

Dates et versions

hal-01793156 , version 1 (16-05-2018)

Identifiants

  • HAL Id : hal-01793156 , version 1

Citer

Daniel Etiemble. Processeurs multithreads et multicoeurs . 2018. ⟨hal-01793156⟩
113 Consultations
0 Téléchargements

Partager

Gmail Facebook X LinkedIn More