Le principe de l’Hyper-Threading consiste à doubler virtuellement le nombre de coeurs physiques d’ un processeur. En d’autres termes, cela consiste à rendre possible la réalisation de 2 tâches (un jeu d’instructions) par cycle d’horloge. Cette technologie mise en œuvre par Intel, est issue du SMT (Simultanous MultiThreading). C’est-à-dire une technique de parallélisation des tâches, du multi-tâche simultané en somme, autrement dit le faite d’exécuter plusieurs jeux d’instructions en même temps.
Les coeurs physiques simulés sont appelés coeurs virtuels. Ces coeurs simulés sont intégralement identiques aux versions physiques, il n’y a pas de limitation. Les cœurs physiques sont comme le nom l’indique, des cœurs matériellement ou physiquement présents. Du point de vue des logiciels il n’y a pas de différence entre un coeur logique et physique. C’est pourquoi pour simplifier on utilise le terme thread, pour indiquer le nombre de coeurs exploitable, tous simplement. Par exemple un CPU multithreading à 8 threads, veut dire qu’il a quatre cœurs physiques et huit cœurs logiques (pour 2 tâches par cycle).
Tirer parti de l’Hyper-Threading
Bien sûr les cœurs logiques ne sont pas comparables en performances aux cœurs physiques. Cela permet quand même d’optimiser au mieux les cœurs physiques. Aussi avec certaines taches traitées par les coeurs logiques , les gains sont nuls voire négatif. Mais pas de panique dans la plupart des cas c’est avantageux !.
Pour tirer un maximum d’avantages des processeurs Hyper-Threading, il faut par des logiciels qui soient capables d’exploiter plusieurs cœurs en même temps. Malgré tout, on peut tirer bénéfice de plusieurs cœurs même avec des logiciels non adaptés. Comment c’est possible ? par exemple prenons plusieurs logiciels non compatibles multi-tâche. En les exécutant en même temps, chacun va pouvoir utiliser un cœur différent, par conséquent bénéficier du multi-core.
Comment être sur d’en bénéficier ?
Il faut tout d’abord bien évidemment un CPU multi-threding. Ensuite une carte-mère est un OS qui prend en charge cette technologie et enfin que l’Hyper-Threading soit activée dans le BIOS (activer par défaut la plupart du temps). Rassurez-vous c’est difficile de trouver maintenant du matériel ou un OS qui ne gére pas le multi tache. Chez le fondeur AMD l’Hyper-Threading s’appelle SMT.
Crédit vidéo : Intel.
Pour en savoir plus sur les CPU, vous pouvez consulter le guide sur les processeurs.
Pour en savoir plus sur les cartes-mères vous pouvez consulter le guide sur les cartes-mères.