Hyper-Threading
Hyper-Threading, ou HT est l'implémentation par Intel du Simultaneous Multi Threading à deux voies dans ses microprocesseurs.
Recherche sur Google Images :
Source image : apple.com Cette image est un résultat de recherche de Google Image. Elle est peut-être réduite par rapport à l'originale et/ou protégée par des droits d'auteur. |
Page(s) en rapport avec ce sujet :
- La technologie d'Hyper- Threading d'Intel autorise un unique processeur physique... cœur du processeur, auxquelles elles accèdent alternativement : mémoire cache... simple de bureautique, l'apport de l'Hyper Threading est quasi nul.... (source : laboratoire-microsoft)
- L'Hyper- Threading : sous ce terme quelque peu barbare se cache une optimisation spécifique aux processeurs Intel malheureusement mal connue du grand public.... (source : pcworld)
- Elle consiste à gérer un processeur avec un seul cœur comme un processeur avec... L'Hyper-threading est une technologie propre à Intel et qui a marqué la... (source : presence-pc)
Hyper-Threading, ou HT est l'implémentation par Intel du Simultaneous Multi Threading (SMT) à deux voies dans ses microprocesseurs. Le premier modèle grand public de la gamme à en bénéficier fut le Northwood cadencé à 3, 06 GHz. Le Xeon Northwood en bénéficia jusque là.
Schématiquement, l'hyper-threading consiste à créer deux processeurs logiques sur une seule puce, chacun pourvu de ses propres registres de données et de contrôle, et d'un contrôleur d'interruptions spécifique. Ces deux unités partagent les éléments du cœur de processeur, le cache et le bus dispositif. Ainsi, deux sous-processus peuvent être traités simultanément par le même processeur. Cette technique multitâche permet d'utiliser au mieux les ressources du processeur en garantissant que des données lui sont envoyées en masse. Elle permet aussi de perfectionner les performances en cas de défauts de cache (cache misses).
Performances
Les avantages de l'hyper-threading sont les suivants :
- amélioration du support de code multi-threadé
- gestion de plusieurs threads en même temps
- meilleur temps de réaction, meilleur temps de réponse
- dans le cas d'un serveur, augmentation du nombre d'utilisateurs envisageable
Selon Intel, la première implémentation n'utilisait que 5 % de surface supplémentaire sur le support physique comparé à un processeur normal. Cette approche offrait un gain en performance variant entre 15 à 30 %. Intel affirme que ce gain va jusqu'à 30 % comparé à un Pentium 4 sans cette technologie.
Cependant, les performances fluctuent sensiblement selon les applications. Occasionnellemen, l'exécution s'avère même plus lente lorsque l'hyper-threading est activé. Cette perte est causée par le système de replay présent dans le Pentium 4 qui met en attente certaines instructions qui ne remplissent pas les conditions nécessaires à leur exécution. Il empêche l'hyper-threading d'exécuter d'autres tâches.
Les performances peuvent aussi être affectées par des effets liés à la mémoire cache. A titre d'exemple, avec un processeur comportant 512 Kio de cache et des processus opérant sur 400 Kio de données, on peut distinguer deux cas :
- les deux processus tournent individuellement, le processeur est capable de mettre en cache les données
- lorsque les deux processus tournent en même temps, ils nécessitent 800 Kio de cache, les défauts de cache seront habituels.
Les défauts de cache dégradent fortement les performances sur les dispositifs modernes et cela peut affecter les gains obtenus avec l'hyper-threading de manière significative.
Sécurité
En mai 2005, Colin Percival a publié un document appelé Cache Missing for Fun and Profit[1] où il démontre comment un thread malveillant, lancé avec des privilèges limités, pourrait en principe accéder à des informations provenant d'un autre thread. Ce genre d'attaques, appelées attaques par canaux auxiliaires, permettent d'obtenir des informations secrètes comme des clés de chiffrement.
Références
- ↑ (en) http ://www. dæmonology. net/papers/htt. pdf [pdf]
Recherche sur Amazone (livres) : |
Voir la liste des contributeurs.
La version présentée ici à été extraite depuis cette source le 07/04/2010.
Ce texte est disponible sous les termes de la licence de documentation libre GNU (GFDL).
La liste des définitions proposées en tête de page est une sélection parmi les résultats obtenus à l'aide de la commande "define:" de Google.
Cette page fait partie du projet Wikibis.