Le Simultaneous Multi Threading est une technique informatique datant des années 1950. Elle consiste, comme le Symmetric multiprocessing (SMP), à augmenter le TLP (Thread Level Parallelism), c’est-à-dire le parallélisme des threads.
Le but est d'améliorer le remplissage du flot d'instructions du processeur et donc d'augmenter sa vitesse de traitement, à condition que le programme soit conçu de façon adéquate.
Les CPU non SMT passent alternativement d'un thread à l'autre pour l'exécution des programmes. Le SMT est le partage du pipeline d'exécution d'un processeur entre plusieurs threads, qu'ils soient d'un même programme ou de deux programmes différents. Les registres et les caches sont également partagés. Ceci implique un système de suivi des différentes instructions et données dans le CPU.
Si deux threads peuvent se partager le pipeline, on parle de SMT à deux voies (comme pour l'Hyperthreading d'Intel), de SMT à 4 voies pour 4 threads (comme pour le DEC Alpha EV8).
Le POWER5 d'IBM intègre un SMT deux voies complexe, puisqu'il peut attribuer des priorités aux threads et activer/désactiver le SMT de manière dynamique pour les cas où la méthode n'augmente pas les performances. Le processeur 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].
Simultaneous multithreading — Simultaneous multithreading, often abbreviated as SMT, is a technique for improving the overall efficiency of superscalar CPUs with hardware multithreading. SMT permits multiple independent threads of execution to better utilize the resources… … Wikipedia
Simultaneous Multithreading — Der Begriff Simultaneous Multithreading (etwa simultaner Mehrfadenbetrieb), oder kurz SMT, bezeichnet die Fähigkeit eines Mikroprozessors, mittels getrennter Pipelines und/oder zusätzlicher Registersätze mehrere Threads gleichzeitig auszuführen.… … Deutsch Wikipedia
Simultaneous multithreading — Одновременная многопоточность (англ. Simultaneous Multithreading) технология, позволяющая исполнение инструкций из нескольких независимых потоков выполнения на множестве функциональных модулей суперскалярного микропроцессора в одном цикле.… … Википедия
Multithreading (computer hardware) — Multithreading computers have hardware support to efficiently execute multiple threads. These are distinguished from multiprocessing systems (such as multi core systems) in that the threads must all operate in the same address space, as there is… … Wikipedia
Multithreading (computer architecture) — This article describes hardware supports for multithreads. For thread in software, see Thread (computer science). Multithreading computers have hardware support to efficiently execute multiple threads. These are distinguished from multiprocessing … Wikipedia
Multithreading (hardwareseitig) — Dieser Artikel oder Abschnitt ist nicht hinreichend mit Belegen (Literatur, Webseiten oder Einzelnachweisen) versehen. Die fraglichen Angaben werden daher möglicherweise demnächst gelöscht. Hilf Wikipedia, indem du die Angaben recherchierst und… … Deutsch Wikipedia
Multithreading — Cet article concerne le support matériel des multithreads. Pour les thread logiciels, voir thread (informatique). Les ordinateurs dits multithreading ont du matériel qui leur permet d exécuter efficacement des thread (informatique) multiples. Il… … Wikipédia en Français
multithreading — Simultaneous processing of more than one message by an application program … IT glossary of terms, acronyms and abbreviations
Temporal multithreading — is one of the two main forms of multithreading that can be implemented on computer processor hardware, the other form being simultaneous multithreading. The distinguishing difference between the two forms is the maximum number of concurrent… … Wikipedia
Hardwareseitiges Multithreading — Durch hardwareseitiges Multithreading (auch: Mehrfädigkeit, Mehrsträngigkeit) können bestimmte Prozessoren mit nur einem vollständigen Prozessor Kern mehrere Programme quasi gleichzeitig bearbeiten. Ein solcher Prozessor wird multithreaded… … Deutsch Wikipedia