Qu'est-ce que l'hyper-threading ?

click fraud protection

Une bonne partie des processeurs Intel offrent une fonctionnalité appelée hyper-threading, qui est un nom de marque Intel pour Simultaneous Multi-Threading, ou SMT. L'hyperthreading est un processus qui peut permettre d'augmenter les performances du processeur dans les tâches fortement multithread.

Astuce: les threads sont des séquences d'instructions pour un processus. Si un processus est divisé en plusieurs parties plus petites pouvant être exécutées simultanément, il est appelé multithread.

Qu'est-ce que l'hyperthreading et comment ça marche ?

L'hyperthreading est commercialisé comme un outil qui permet à un seul cœur de processeur d'exécuter deux processus à la fois. Dans la plupart des systèmes d'exploitation, les cœurs hyperthreadés sont présentés comme un deuxième cœur logique, à côté du cœur physique principal et comme ayant le même

Ce n'est pas une représentation particulièrement réaliste du fonctionnement réel de l'hyperthreading. En réalité, l'hyperthreading est un processus de planification intelligent qui permet à un cœur de processeur de mettre en file d'attente deux threads. Si le premier thread se bloque, par exemple, s'il attend des données, le deuxième thread peut être remplacé en douceur. Cette conception permet au deuxième thread de tirer parti de tout temps CPU inactif qui serait autrement gaspillé, pour effectuer des calculs utiles.

Quel est l'impact sur les performances ?

Selon le type de charge de travail, comme pour les processus fortement multithreads, tels que le montage vidéo, l'hyperthreading peut augmenter les performances jusqu'à 30 %. Cependant, dans d'autres tâches, telles que les applications à thread unique, l'hyperthreading ne peut entraîner aucun gain de performances.

L'hyperthreading signifie que le processeur utilise plus d'énergie et génère plus de chaleur qu'un processeur non hyperthreadé. Cela est dû aux niveaux d'utilisation plus élevés du processeur.

Cœurs hyperthreadés vs cœurs physiques

En réalité, l'hyperthreading est un bon plus, offrant un peu de performances gratuites supplémentaires pour les tâches multithread. Les cœurs de processeur physiques, cependant, sont capables de fournir une amélioration des performances beaucoup plus importante pour les charges de travail multithread. Si vous avez le choix entre un processeur dual-core avec hyperthreading et un processeur quad-core sans hyperthreading, le quad-core surpassera le dual-core hyperthread. Le nombre de cœurs physiques est la partie la plus importante des performances multithread, la prise en charge de l'hyperthreading est un peu un coup de pouce.