Lesimultaneous multithreading (SMT) est une technique informatique datant desannées 1960. Il s'agit d'une forme demultithreading, une technique qui consiste, comme lesymmetric multiprocessing (SMP), à augmenter le TLP (thread level parallelism), c’est-à-dire leparallélisme desthreads.
Le SMT est le partage d'un cœur deprocesseur superscalaire (lespipelines, les unités de calcul et lescaches) entre plusieursthreads. Les processeurs non SMT passent alternativement d'unthread à l'autre pour l'exécution des instructions, alors que des processeurs SMT peuvent allouer des unités de calcul à des threads différents simultanément. Le but est d'améliorer l'utilisation des ressources.
Si deux threads peuvent se partager les ressources, on parle de SMT à deux voies (comme pour l'Hyperthreading d'Intel), de SMT à 4 voies pour 4threads (comme pour leDEC Alpha EV8).
LePOWER5 d'IBM intègre un SMT deux voies complexe, puisqu'il peut attribuer des priorités auxthreads et activer/désactiver le SMT de manière dynamique pour les cas où la méthode n'augmente pas les performances. Leprocesseur multi-cœurPOWER7 intègre un SMT quatre voies permettant de désactiver un ou deux threads inactifs sur chaque cœur afin d'augmenter les performances des threads actifs[1]. Le SMT8 est disponible surPOWER8 à partir de la versionAIX 7.2[2].
Technologies deprocesseur | |||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Modèles | |||||||||||||
| Architecture |
| ||||||||||||
| Instruction | |||||||||||||
| Types |
| ||||||||||||
| Microarchitecture | |||||||||||||
| Parallélisme |
| ||||||||||||
| Circuiterie et unité |
| ||||||||||||
| Cadencement | |||||||||||||
| Gestion de l'alimentation | |||||||||||||
| Fabrication | |||||||||||||
| Articles liés | |||||||||||||