1. Présentation de l'Hyper Threading
1.1 Qu'est ce que la technologie : Hyper Treading ?
La technologie d’Hyper-Threading
d’Intel permet à un unique processeur physique d’exécuter de multiples flux
d’instructions (threads) simultanément, apportant potentiellement un
débit accru et des performances améliorées.
L'Hyper-Threading alloue alternativement les
ressources CPU à chaque unité logique, grâce à un contrôleur d'interruptions
spécifique. Les deux unités logiques partagent certaines ressources du
coeur du processeur, auxquelles elles accèdent alternativement : mémoire cache
(augmentée pour l'occasion), mémoire tampon, la ROM microcode, etc. tandis que
d'autres ressources sont dupliquées, comme la table d'alias de registres.
Depuis 2002,
Intel intègre sa
technologie d’Hyper Threading dans la famille des processeurs Intel
Xeon.

Ces processeurs contiennent
deux architectures d’état sur un même noyau processeur ; vu du système
d’exploitation, chaque processeur physique agira donc comme deux processeurs
logiques. Cependant, les deux processeurs logiques partagent toujours les mêmes
ressources d’exécution du processeur physique ; le gain en performance ne sera
donc pas équivalent au fait d’avoir deux processeurs physiques complets séparés,
mais vous pouvez compter sur une amélioration de l'ordre de 30 % tout de
même, ce qui n'est pas négligeable.
La technologie Hyper-Threading
complète l’architecture multiprocesseur symétrique (SMP) en permettant
l’exécution de plusieurs flux d’instructions simultanément sur chaque
processeur.
Il faut savoir que pour profiter pleinement de la technologie
Hyper Threading,
il faut en effet que l'application soit prédisposée à un traitement
multiprocesseur par son éditeur, ce qui n'est pas toujours le cas. Il s'agit en
général d'applications qui effectuent de nombreux calculs
simples et répétitifs, comme par exemple les logiciels de traitement vidéo, d'image de
synthèse, de retouche d'images, de CAO... Pour cette catégorie d'applications,
le gain de puissance peut atteindre sans problème les 60 %. En revanche,
pour une utilisation simple de bureautique, l'apport de l'Hyper Threading
est quasi nul.
Nous verrons en détail l'avantage et le gain de performance
pour les systèmes d'exploitations Microsoft...
1.2 Comment les serveurs Windows reconnaissent-ils les processeurs dotés de la
technologie Hyper-Threading ?
Tout se passe dans le BIOS (Basic Input/Output System). En
effet, celui ci fournit aux systèmes d’exploitation serveurs Windows les
informations relatives aux processeurs présents dans un système. Chaque
constructeur de systèmes serveurs développe son propre BIOS en fonction des
spécifications fournies par Intel.
En supposant qu’un BIOS donné respecte bien
les spécifications d’Intel, celui-ci commence à compter le nombre de processeur
à partir du premier processeur logique de chaque processeur physique. Lorsque ce BIOS
a compté un processeur logique pour chaque processeur physique, il compte un
deuxième processeur logique pour chaque processeur physique et ainsi de suite...
(Cf. Fig 1)

Fig
1 : Les numéros indiquent l’ordre dans lequel les processeurs logiques sont
reconnus par le BIOS si celui-ci a été développé en respectant les
spécifications d’Intel. Cet exemple montre un système quadri-processeur doté de
la technologie Hyper-Threading.
Il est, bien sûr indispensable, que le BIOS compte le nombre de
processeurs logiques de la manière décrite. Sinon, dans la cas contraire, Windows 2000 et les
applications pourraient utiliser des processeurs logiques lorsqu’ils devraient
utiliser des processeurs physiques.
Pour mieux comprendre voici un petit exemple : considérons une
application quelconque dont la licence permet l’utilisation de deux processeurs sur le
système représenté en figure 1. Une telle application obtiendra de meilleures
performances si elle utilise deux processeurs physiques différents (par
exemple, 1 et 2) qu’elle ne pourrait en obtenir en utilisant deux processeurs
logiques sur un même processeur physique (par exemple, 1 et 5).
Voyons maintenant plus en détail comment se comporte les serveurs Windows
avec l'Hyper Threading.
Sommaire
1. Présentation de l'Hyper Threading
2. Les serveurs Windows et l'Hyper Threading
3. Les performances et les licences
|
|
 |
Pour afficher ou poster un commentaire, cliquez sur ce lien : Forum-Microsoft
|
|