Qu’est-ce que l’hyperthreading ?

L’idée de base de l’hyperthreading est de permettre à un microprocesseur de traiter plusieurs tâches simultanément. Alors qu’auparavant, une seule tâche pouvait être gérée par processeur, l’hyperthreading d’Intel permet désormais de diviser un processeur en deux cœurs logiques et virtuels traitant les hyperthreads de façon simultanée. Nous vous expliquons ici comment l’hyperthreading améliore la performance de votre processeur.

Votre propre domaine .fr !

Démarquez-vous avec un nom de domaine unique et une adresse email personnalisée !

Simple
Sécurisé
Assistance 24/7

Que signifie « hyperthreading » ?

Le terme d’hyperthreading, qui semble tout droit tiré de la science-fiction, ne recouvre en réalité que le principe qui veut que deux mains valent mieux qu’une. L’hyperthreading d’Intel trouve son origine dans le domaine des serveurs, où plusieurs processeurs physiques sont généralement utilisés simultanément pour augmenter la puissance de calcul. L’hyperthreading, en revanche, ne fait intervenir qu'un seul processeur physique, mais celui-ci se comporte comme s’il en existait deux. Ceci est rendu possible car le processeur se divise en deux cœurs virtuels, également appelés noyaux, qui traitent les tâches en parallèle. Cela permet de traiter simultanément plusieurs files de commandes en tant qu’hyperthread, de répartir les processus entre les cœurs virtuels et d’améliorer l’utilisation du processeur.

Définition

Hyperthreading : l’hyperthreading est le nom d’une technologie inventée par Intel qui permet à un microprocesseur physique de se comporter comme deux cœurs logiques et virtuels. Il est donc possible pour un processeur de traiter plus d’une tâche ou plus d’un thread à la fois. Le processus hyperthread augmente les performances du processeur et garantit une meilleure utilisation de l’ordinateur.

Origine de l’hyperthread

La technologie hyperthread (HT) vient du fabricant de processeurs et de CPU Intel. L’HT était déjà utilisé dans le domaine du développement, mais depuis le 14 novembre 2002, les utilisateurs d'ordinateurs domestiques peuvent également profiter de la technologie d’hyperthreading d’Intel. Avec le Pentium-4 incluant le cœur Northwood-B, Intel a finalement introduit officiellement la technologie d’hyperthreading sur le marché. Dès les modèles suivants, le Pentium D et le Core-2-Duo, Intel a retiré l’hyperthreading en remplaçant cette technologie par des processeurs principaux à double cœur.

Cependant, ce qui est plus fonctionnel l’emporte toujours à long terme, et c’est ainsi que l’hyperthreading a trouvé sa place dans les microprocesseurs Atom d’Intel ainsi que dans la série Core-i. Sous cette forme, l’hyperthreading est une technologie utilisée exclusivement dans les processeurs Intel.

Note

Quiconque s’intéresse aux processeurs et à leurs performances connaît sans doute les deux géants de la fabrication des processeurs : Intel et AMD. Si la technologie d’hyperthreading n’est utilisée que dans les processeurs d’Intel, des technologies de multithreading simultané très similaires à l’hyperthreading d’Intel peuvent également être trouvées dans les processeurs AMD tels que ceux de la série Ryzen 5000.

Comment fonctionne la technologie d’hyperthreading ?

Le fonctionnement de la technologie d’hyperthreading était et reste avant tout novateur. Il confère à un cœur de processeur individuel la possibilité de se comporter comme deux cœurs de processeur physiques et de traiter davantage de threads, c'est-à-dire plus de files de commandes, en parallèle sans tourner à vide. Lorsque l’hyperthreading est activé, deux contextes d’exécution sont alors gérés et traités par cœur de CPU. Un cœur se divise donc en deux cœurs virtuels et logiques qui se partagent la puissance de calcul du processeur. L’hyperthreading s’applique toujours par cœur physique. Ainsi, avec l’hyperthreading activé et dans le cas d’un processeur à dix cœurs, dix cœurs physiques se comportent comme 20 cœurs virtuels et traitent d’autant plus de threads.

Comment activer l’hyperthreading ?

Si vous entendez parler de l’hyperthreading pour la première fois, vous devez penser, à juste titre, que tous les processeurs devraient être équipés de cette technologie. Par chance, l’hyperthreading est actif par défaut dans les cœurs de CPU, à condition qu’ils supportent la technologie d’hyperthreading. Néanmoins, l’hyperthreading peut être activé et désactivé dans le BIOS sous « Hyper-Threading Technology » via « Enable » et « Disable ». Dans le cas de processeurs ne prenant pas en charge l’hyperthreading, chaque cœur physique traite uniquement les différents processus logiques de manière séquentielle, c'est-à-dire les uns après les autres. Vous pouvez vérifier si l’hyperthreading est actif ou supporté dans le gestionnaire de périphériques. Par exemple, si vous avez un ordinateur avec deux cœurs de processeur mais que vous voyez quatre processeurs sous « Processeurs », l’hyperthreading est actif.

Quels sont les avantages de l’hyperthreading ?

Le plus grand avantage de l’hyperthreading est probablement le fait que la mise en œuvre de la technologie d’hyperthreading dans les microprocesseurs est moins chère que celle qui consiste à intégrer deux microprocesseurs physiques. Toutefois, étant donné que la plupart des ordinateurs actuels sont déjà équipés de processeurs multi-cœurs, cet avantage ne peut être exploité que si les processeurs avec hyperthreading ont le même nombre de processeurs physiques que les machines qui ne supportent pas l’hyperthreading.

Le véritable avantage de l’hyperthreading est l’utilisation efficace des ressources. Deux cœurs virtuels dans un cœur physique ne signifient pas que les tâches s’exécutent deux fois plus vite. Toutefois, la puissance de calcul nécessaire pour plusieurs processus peut être répartie non seulement de manière séquentielle, mais aussi simultanément entre les cœurs virtuels. Cela permet d’éviter les temps morts inutiles et d’exécuter les processus sans interruption. Les threads n’ont donc pas besoin d’attendre qu’un thread nécessitant une forte puissance de calcul ait été traité et s’exécutent simplement sur le deuxième cœur.

Conseil

Plus il y en a, mieux c’est. C’est particulièrement vrai pour les serveurs qui doivent traiter une charge de travail importante. IONOS vous propose des serveurs Intel puissants, évolutifs en fonction des besoins, facturés à la minute qui s’accompagnent d’une assistance par des experts 24h/24, 7j/7.

Processeurs multi-cœurs ou cœurs virtuels : quelle technologie est la plus pertinente ?

Dans tous les cas, l’avantage des processeurs multi-cœurs est qu’un cœur physique n’a pas à partager ses ressources. Les processeurs disposant, par exemple, de dix cœurs physiques auraient en principe un avantage sur cinq cœurs physiques fonctionnant avec la technologie d’hyperthreading, car chaque cœur peut utiliser toutes les ressources disponibles pour traiter les processus. Les cœurs virtuels utilisent quant à eux la même puissance de calcul que les cœurs physiques pour gérer des ensembles de registres parallèles. Aujourd’hui, il est dans tous les cas pertinent de travailler avec des processeurs comportant au moins deux cœurs physiques ou plus.

Différence entre le multithreading et l’hyperthreading

De prime abord, le multithreading et l’hyperthreading semblent très similaires : ces deux technologies ont pour but de répartir et de traiter efficacement les threads entre les cœurs de processeur. L’hyperthreading constitue toutefois une sous-catégorie du procédé de multithreading et est également nommé multithreading simultané (SMT). Pour bien comprendre le multithreading, il essentiel de savoir que les threads sont des files de commandes qui sont traitées de façon différente en fonction du matériel et du logiciel.

Le multithreading implique que plusieurs files de commandes sont traitées en même temps. Alors qu’on parle de pseudo-simultanéité pour les méthodes de multithreading telles que le Switch-on-Event-Multithreading et le Time-Slice-Multithreading – puisque les threads ne s'exécutent pas simultanément –, le multithreading simultané, c’est-à-dire l’hyperthreading, offre une véritable simultanéité dans le traitement. En outre, l’hyperthreading est une technologie SMT supportée par le matériel tandis que le multithreading peut exclusivement être supporté par des programmes et des logiciels.

Exemples pratiques du processus d’hyperthread

Lorsqu’on s’intéresse à l’hyperthreading, la question se pose souvent de savoir si cette fonction apporte réellement des avantages par rapport aux processeurs multi-cœurs sans hyperthreading. La réponse est simple : ça dépend. Le matériel utilisé et sa destination sont ici des éléments décisifs. Le fait que l’hyperthreading puisse optimiser le traitement des threads grâce à des pipelines séparés et des ensembles de registres parallèles ne fait aucun doute. Par exemple, le superordinateur Cray MTA est capable de gérer un nombre impressionnant de 128 threads avec un seul noyau de processeur.

Dans la pratique, on cite souvent le gaming en relation avec le SMT ou l’hyperthreading. Les joueurs, en particulier, ont besoin d’une grande puissance de calcul pour faire tourner en parallèle des jeux, de la musique et peut-être même l’enregistrement d’un stream Twitch. La question de savoir si l’hyperthreading améliore réellement les performances de jeu est discutable. Certains joueurs affirment que, dans les faits, l’hyperthreading ralentit les performances du processeur, tandis que d’autres prétendent que l’hyperthreading peut être très utile lorsque les jeux prennent en charge quatre cœurs ou plus.

Note

Une autre façon d’utiliser la puissance de calcul de façon aussi efficace que possible est l’overclocking de processeur. Cette méthode consiste à augmenter délibérément la fréquence de fonctionnement du processeur au-dessus de la fréquence standard recommandée afin d’obtenir davantage de puissance avec une vitesse de processeur plus élevée. Le risque de cette méthode est que la température du processeur peut augmenter et endommager le matériel si le refroidissement n’est pas amélioré de façon correspondante.

Serveurs dédiés avec IONOS

Au croisement du hardware et du Cloud : des serveurs dédiés avec intégration Cloud et facturation à la minute + conseiller personnel ! 

Assistance 24/7
Trafic illimité
Certificat SSL