L’hyper threading est-il nécessaire ? Encore une fois sur l'Hyper-Threading

Maison / Pannes

Hyper-Threading (hyperthreading, 'hyperthreading', hyper threading - russe) - technologie développée par l'entreprise Intel, permettant au cœur du processeur d'exécuter plus d'un (généralement deux) threads de données. Depuis qu'il a été constaté qu'un processeur typique dans la plupart des tâches n'utilise pas plus de 70% de toute la puissance de calcul, il a été décidé d'utiliser une technologie qui permet, lorsque certaines unités de calcul sont inactives, de les charger avec un autre thread. Cela vous permet d'augmenter les performances du noyau de 10 à 80% en fonction de la tâche.

Comprendre le fonctionnement de l'Hyper-Threading .

Disons que le processeur effectue des calculs simples et qu'en même temps le bloc d'instructions est inactif et SIMD extensions.

Le module d'adressage le détecte et y envoie des données pour un calcul ultérieur. Si les données sont spécifiques, alors ces blocs les exécuteront plus lentement, mais les données ne seront pas inactives. Ou bien ils les prétraiteront pour un traitement plus rapide par le bloc approprié. Cela donne des gains de performances supplémentaires.

Naturellement, le thread virtuel n'atteint pas le noyau à part entière, mais cela permet d'atteindre presque 100% efficacité de la puissance de calcul, chargeant presque tout le processeur de travail, l'empêchant d'être inactif. Avec tout ça, mettre en œuvre la technologie HT cela ne prend qu'environ 5% espace supplémentaire sur la puce, et les performances peuvent parfois être ajoutées à 50% . Cette zone supplémentaire comprend des blocs de registre supplémentaires et des prédictions de branchement qui calculent où la puissance de traitement peut être utilisée dans à l'heure actuelle et envoyez-y les données du bloc d'adressage supplémentaire.

Pour la première fois, la technologie est apparue sur les processeurs Pentium4, mais il n'y a pas eu d'augmentation significative des performances, car le processeur lui-même n'avait pas une puissance de calcul élevée. L'augmentation était au mieux 15-20% , et dans de nombreuses tâches, le processeur fonctionnait beaucoup plus lentement que sans HT.

Ralentir processeur en raison de la technologie Hyper-threading, se produit si :

  • Cache insuffisant pour tout cela et il redémarre cycliquement, ralentissant le processeur.
  • Les données ne peuvent pas être traitées correctement par le prédicteur de branche. Se produit principalement en raison de manque d'optimisation pour certains logiciels ou prise en charge du système d'exploitation.
  • Cela peut également se produire en raison de dépendances de données, lorsque, par exemple, le premier thread nécessite des données immédiates du second, mais qu'il n'est pas encore prêt ou qu'il est en ligne pour un autre thread. Ou bien les données cycliques nécessitent certains blocs pour un traitement rapide, et elles sont chargées avec d'autres données. Il peut exister de nombreuses variantes de dépendance aux données.
  • Si le cœur est déjà fortement chargé et que le module de prédiction de branchement « insuffisamment intelligent » envoie toujours des données qui ralentissent le processeur (pertinent pour Pentium4).

Après Pentium4, Intel commencé à utiliser la technologie seulement à partir de Noyau i7 première génération, sautant la série 2 .

La puissance de calcul des processeurs est devenue suffisante pour la mise en œuvre complète de l'hyperthreading sans trop de dégâts, même pour les applications non optimisées. Plus tard, Hyper-Threading est apparu sur les processeurs de classe moyenne et même économiques et portables. Utilisé sur toutes les séries Noyau je (i3; i5; i7) et sur processeurs mobiles Atome(pas du tout). Ce qui est intéressant c'est processeurs double cœur Avec HT, obtenez un gain de performances supérieur à celui des processeurs quadricœurs en utilisant Hyper-Threading, debout sur 75% quadrinucléaire à part entière.

Où la technologie HyperThreading est-elle utile ?

Il sera utile pour une utilisation en conjonction avec des programmes professionnels, graphiques, analytiques, mathématiques et scientifiques, des éditeurs vidéo et audio, des archiveurs ( Photoshop, Corel Draw, Maya, 3D's Max, WinRar, Sony Vegas & etc). Tous les programmes dans lesquels il est utilisé grand nombre calculs, HT sera certainement utile utile. Heureusement, dans 90% Dans certains cas, ces programmes sont bien optimisés pour son utilisation.

HyperThreading indispensable pour les systèmes de serveurs. En fait, il a été partiellement développé pour ce créneau. Grâce à HT, vous pouvez augmenter considérablement la puissance du processeur lorsqu'il y a un grand nombre de tâches. Chaque thread sera déchargé de moitié, ce qui a un effet bénéfique sur l'adressage des données et la prédiction des branches.

Beaucoup jeux informatiques, avoir une attitude négative envers la présence Hyper-Threading, grâce à quoi le nombre d'images par seconde diminue. Cela est dû au manque d'optimisation de Hyper-Threading du côté du jeu. L'optimisation du système d'exploitation à elle seule ne suffit pas toujours, surtout lorsque l'on travaille avec des données inhabituelles, diverses et complexes.

Sur les cartes mères prenant en charge HT, vous pouvez toujours désactiver la technologie hyperthreading.

Aujourd'hui, j'ai décidé de couvrir le sujet opportunité d'acheter des processeurs avec Hyper-Threading(Hyper Trading) pour les jeux.

La première chose à noter est qu’il ne peut y avoir de réponse claire à la question posée. Pour certains, l’Hyper-Threading est une nécessité, mais pour d’autres, ce sera un gaspillage d’argent inutile. J'analyserai les deux options et après avoir lu l'article (j'espère), chacun sera en mesure d'évaluer de manière indépendante lequel de ces cas est le sien et, par conséquent, tirera des conclusions WEIZED sur l'opportunité d'acheter un processeur avec Hyper-Threading pour lui-même.

Hyper-Threading implique de diviser le traitement des données par le cœur du processeur en 2 threads parallèles. Le point est bien résumé dans la citation suivante :

Lorsqu'une pause se produit lors de l'exécution d'un thread par l'un des processeurs logiques (suite à un échec de cache, une erreur de prédiction de branchement, une attente du résultat d'une instruction précédente), alors le contrôle est transféré au thread d'un autre processeur logique. . Ainsi, pendant qu'un processus attend, par exemple, des données de la mémoire, les ressources informatiques du processeur physique sont utilisées pour traiter un autre processus.

Applications qui n'ont PAS besoin d'Hyper-Threading.

L'Hyper-Threading n'est PAS nécessaire pour:

  • 90% jeux informatiques, à la fois modernes et ceux qui sortiront dans les années à venir ;
  • applications bureautiques.

Justification de l’inutilité de l’Hyper-Threading.

Hyper-Threading a une forte répartition des gains de productivité de 0% (c'est-à-dire une inutilité totale) à 30% (ce qui est très perceptible) qui dépend des facteurs suivants :

1. Optimisation d'une seule application pour travailler avec 8 threads ou plus.

Si l'application n'est pas optimisée pour 8 threads, alors l'Hyper-Threading n'apportera aucun avantage.

Dans certains cas, les tentatives de logiciels « non formés » pour fonctionner avec 8 cœurs aboutissent même au fait qu'un processeur à 8 threads affiche de pires résultats que son « petit frère » sans Hyper-Threading.

2. Pourcentage de charge du processeur

Plus le pourcentage de charge du processeur est élevé, plus l’impact de l’Hyper-Threading est visible. Et vice versa - à faible charge, vous ne remarquerez pas son influence.

Sur la base de ces données, nous pouvons conclure que L'Hyper-Threading n'est PAS nécessaire pour:

  • 90% des jeux informatiques, modernes et ceux qui sortiront dans les années à venir. Ils ne fournissent pas suffisamment de charge CPU ;
  • applications bureautiques.

Où l’Hyper-Threading est-il NÉCESSAIRE ?

  • Les avantages sont indéniables Hyper-Threading dans 3D Max et dans un autre prof. candidatures. Dans mes expériences, cette technologie a réduit le temps de rendu de 30 % ;
  • L'Hyper-Threading est également utile pour le TOP 10 % des jeux informatiques modernes (comme Crysis 3), ainsi que pour les jeux similaires qui sortiront à l'avenir.

Plus de raisons d'utiliser l'Hyper-Threading pour les jeux

Même s'il existe aujourd'hui très peu de jeux sur PC optimisés pour 8 threads, je pense toujours qu'acheter un i7 avec 8 threads a du sens, surtout si l'on regarde vers l'avenir.

Premièrement ordinateurs de jeu à mon avis, ils ne devraient pas se concentrer sur la plupart des jeux, mais sur meilleurs jeux. Mais en fait, il existe aujourd'hui des jeux optimisés pour 8 threads et fournissant plus de 70 % de charge CPU.

Deuxièmement, nous ne pouvons que nous attendre à des améliorations dans les jeux et, par conséquent, à une augmentation de leurs exigences en matière de CPU. Surtout en tenant compte du fait que les consoles ont DÉJÀ 8 cœurs et que cela devrait être considéré comme la « barre » pour les systèmes de jeu dans les années à venir.

Je note que dans dans ce cas Il ne s'agit pas de la spéculation d'un blogueur individuel, mais des prévisions de deux équipes des meilleurs professionnels qui travaillent sur des plateformes telles que PS et XBox.

Troisièmement, le processeur vieillit 2 à 3 fois plus lentement que la carte vidéo. Ce fait vous permet de remplacer la carte vidéo, disons, dans un an ou deux et ainsi de pouvoir profiter d'une nouvelle jeux actuels. Mais cela n'est possible que si le processeur extrait les deux nouvelle carte vidéo et un nouveau jeu. DANS sinon, cela deviendra un lien limitant et ne permettra pas de démontrer tout le potentiel de la carte vidéo dans un jeu spécifique exigeant en processeur.

En tenant compte de ces trois points, l'achat d'un processeur avec Hyper-Threading semble être une décision très raisonnable pour les ordinateurs de jeu.

Il existe des informations sur Internet sur l'inutilité Hyper-Trading en principe.

Pour ma part, j'ai décidé de réaliser un mini-test, en rendant une petite scène avec Hyper-Trading activé et désactivé.

Ainsi, le premier Hyper trading est désactivé. Temps de rendu 188 sec.

Allumez-le. Le temps de rendu est réduit à 151 secondes.

Si vous avez regardé attentivement le contenu Configuration du BIOS, alors vous avez peut-être remarqué l'option CPU Hyper Threading Technology. Et vous vous êtes peut-être demandé ce qu'est l'Hyper Threading (ou hyperthreading, le nom officiel est Hyper Threading Technology, HTT), et à quoi sert cette option.

Hyper Threading est comparativement nouvelle technologie, développé par Intel pour les processeurs à architecture Pentium. Comme l'a montré la pratique, l'utilisation de la technologie Hyper Threading a permis dans de nombreux cas d'augmenter les performances du processeur d'environ 20 à 30 %.

Ici, vous devez vous rappeler comment fonctionne généralement le processeur central d’un ordinateur. Dès que vous allumez l'ordinateur et exécutez un programme dessus, le processeur commence à lire les instructions qu'il contient, écrites dans ce qu'on appelle le code machine. Il lit chaque instruction tour à tour et les exécute les unes après les autres.

Cependant, de nombreux programmes comportent plusieurs processus logiciels exécutés simultanément. De plus, les systèmes d'exploitation modernes permettent à l'utilisateur de disposer de plusieurs programmes en cours d'exécution. Et ils ne se contentent pas de le permettre - en fait, une situation dans laquelle un seul processus s'exécute dans le système d'exploitation est totalement impensable aujourd'hui. Par conséquent, les processeurs développés à l'aide de technologies plus anciennes présentaient de faibles performances dans les cas où il était nécessaire de traiter plusieurs processus simultanés à la fois.

Bien entendu, afin de résoudre ce problème, vous pouvez inclure plusieurs processeurs ou processeurs utilisant plusieurs cœurs de calcul physiques dans le système. Mais une telle amélioration est coûteuse, techniquement complexe et pas toujours efficace d’un point de vue pratique.

Historique du développement

Par conséquent, il a été décidé de créer une technologie permettant de traiter plusieurs processus sur un seul cœur physique. Dans ce cas, pour les programmes, il semblera extérieurement qu'il y avait plusieurs cœurs de processeur dans le système à la fois.

La prise en charge de la technologie Hyper Threading est apparue pour la première fois dans les processeurs en 2002. Il s'agissait de processeurs de la famille Pentium 4 et d'un serveur Processeurs Xeon avec une fréquence d'horloge supérieure à 2 GHz. Initialement, la technologie s'appelait Jackson, mais son nom a ensuite été changé en Hyper Threading, plus compréhensible pour le grand public - qui peut être grossièrement traduit par « super-threading ».

Dans le même temps, selon Intel, la surface du cristal du processeur prenant en charge Hyper Threading a augmenté par rapport au modèle précédent qui ne le prend pas en charge de seulement 5 %, avec une augmentation moyenne des performances de 20 %.

Bien que la technologie ait généralement fait ses preuves, Intel a décidé, pour un certain nombre de raisons, de désactiver la technologie Hyper Threading dans les processeurs de la famille Core 2 qui ont remplacé le Pentium 4. L'Hyper Threading, cependant, est réapparu plus tard dans les processeurs du Les architectures Sandy Bridge et Ivy Bridge et Haswell, ayant été considérablement repensées.

L'essence de la technologie

Comprendre la technologie Hyper Threading est important car c'est l'un des... fonctions clés V Processeurs Intel.

Malgré tout le succès obtenu par les processeurs, ils présentent un inconvénient majeur : ils ne peuvent exécuter qu'une seule instruction à la fois. Disons que vous avez lancé simultanément des applications telles que éditeur de texte, navigateur et Skype. Du point de vue de l'utilisateur, cet environnement logiciel peut être qualifié de multitâche, mais du point de vue du processeur, c'est loin d'être le cas. Le cœur du processeur exécutera toujours une instruction par certaine période de temps. Dans ce cas, la tâche du processeur est de répartir les ressources de temps processeur entre les applications individuelles. Parce que cette exécution séquentielle des instructions se produit extrêmement rapidement, vous ne le remarquez pas. Et il vous semble qu'il n'y a pas de retard.

Mais il y a encore du retard. Le retard est dû à la manière dont chaque programme fournit des données au processeur. Chaque flux de données doit arriver à une heure précise et être traité individuellement par le processeur. La technologie Hyper Threading permet à chaque cœur de processeur de planifier le traitement des données et de distribuer les ressources simultanément pour deux threads.

Il convient de noter qu'au cœur des processeurs modernes se trouvent plusieurs dispositifs dits d'exécution, chacun étant conçu pour effectuer une opération spécifique sur les données. Dans ce cas, certains de ces périphériques exécutifs peuvent être inactifs lors du traitement des données d'un thread.

Pour comprendre cette situation, nous pouvons faire une analogie avec des ouvriers travaillant dans un atelier d'assemblage sur un convoyeur et traitant différents types de pièces. Chaque travailleur est équipé d'un outil spécifique conçu pour effectuer une tâche. Cependant, si les pièces arrivent dans le mauvais ordre, des retards se produisent car certains travailleurs font la queue pour commencer le travail. Hyper Threading peut être comparé à une bande transporteuse supplémentaire qui a été posée dans l'atelier afin que les travailleurs auparavant inactifs puissent effectuer leurs opérations indépendamment des autres. L'atelier n'en est toujours qu'un, mais les pièces sont traitées plus rapidement et plus efficacement, ce qui réduit les temps d'arrêt. Ainsi, Hyper Threading a permis d'activer les unités d'exécution de processeur qui étaient inactives lors de l'exécution d'instructions à partir d'un thread.

Dès que vous allumez un ordinateur doté d'un processeur dual-core prenant en charge Hyper Threading et ouvrez le Gestionnaire des tâches de Windows sous l'onglet Performances, vous y trouverez quatre graphiques. Mais cela ne signifie pas que vous disposez réellement de 4 cœurs de processeur.

Cela se produit parce que Windows pense que chaque cœur possède deux processeurs logiques. Le terme « processeur logique » semble drôle, mais il désigne un processeur qui n’existe pas physiquement. Windows peut envoyer des flux de données à chaque processeur logique, mais un seul cœur fait réellement le travail. Par conséquent, un seul cœur doté de la technologie Hyper Threading est très différent des cœurs physiques distincts.

La technologie Hyper Threading nécessite la prise en charge du matériel et des logiciels suivants :

  • Processeur
  • Jeu de puces carte mère
  • système opérateur

Avantages de la technologie

Considérons maintenant la question suivante : dans quelle mesure la technologie Hyper Threading augmente-t-elle les performances de l'ordinateur ? Dans les tâches quotidiennes, comme surfer sur Internet et taper au clavier, les avantages de la technologie ne sont pas si évidents. Cependant, gardez à l’esprit que les processeurs actuels sont si puissants que les tâches quotidiennes utilisent rarement pleinement le processeur. De plus, beaucoup dépend aussi de la façon dont c'est écrit logiciel. Vous pouvez exécuter plusieurs programmes en même temps, mais si vous regardez le graphique de charge, vous verrez qu'un seul processeur logique par cœur est utilisé. Cela se produit parce que le logiciel ne prend pas en charge la répartition des processus entre les cœurs.

Cependant, pour des tâches plus complexes, l’Hyper Threading peut s’avérer plus utile. Des applications telles que des programmes de modélisation 3D, des jeux 3D, des programmes d'encodage/décodage de musique ou de vidéo et de nombreuses applications scientifiques sont écrites pour tirer pleinement parti du multithreading. Vous pouvez ainsi bénéficier des avantages en termes de performances d'un ordinateur compatible Hyper Threading tout en jouant à des jeux difficiles, en écoutant de la musique ou en regardant des films. L'augmentation des performances peut atteindre jusqu'à 30 %, bien qu'il puisse y avoir des situations où l'Hyper Threading n'apporte aucun avantage. Parfois, si les deux threads chargent toutes les unités d'exécution du processeur avec les mêmes tâches, une légère diminution des performances peut même être observée.

Revenant à la présence d'une option correspondante dans la configuration du BIOS qui vous permet de définir les paramètres Hyper Threading, dans la plupart des cas, il est recommandé d'activer cette fonction. Cependant, vous pouvez toujours le désactiver s'il s'avère que votre ordinateur fonctionne avec des erreurs ou même si ses performances sont inférieures à celles attendues.

Conclusion

Étant donné que l'augmentation maximale des performances lors de l'utilisation de l'Hyper Threading est de 30 %, on ne peut pas dire que la technologie équivaut à doubler le nombre de cœurs de processeur. Cependant, Hyper Threading est une option utile et, en tant que propriétaire d’ordinateur, cela ne vous fera pas de mal. Son avantage est particulièrement visible, par exemple, dans les cas où vous éditez des fichiers multimédias ou utilisez votre ordinateur comme poste de travail pour de tels fichiers. programmes professionnels, comme Photoshop ou Maya.

La technologie Hyper-Threading (HT, hyperthreading) est apparue pour la première fois il y a 15 ans - en 2002, en Processeurs Pentium 4 et Xeon, et est depuis apparu dans les processeurs Intel (dans la gamme Core i, certains Atom, dans dernièrementégalement dans Pentium), puis a disparu (son support n'était pas disponible dans les gammes Core 2 Duo et Quad). Et pendant ce temps, il a acquis des propriétés mythiques : on dit que sa présence double presque les performances du processeur, transformant les i3 faibles en i5 puissants. Dans le même temps, d’autres affirment que l’HT est un stratagème marketing courant et peu utile. La vérité est, comme d'habitude, au milieu - à certains endroits, cela a du sens, mais il ne faut certainement pas s'attendre à une multiplication par deux.

Description technique de la technologie

Commençons par la définition donnée sur le site d'Intel :

La technologie Intel® Hyper-Threading (Intel® HT) permet une utilisation plus efficace des ressources du processeur en permettant à plusieurs threads de s'exécuter sur chaque cœur. En termes de performances, cette technologie augmente le débit des processeurs, améliorant ainsi les performances globales des applications multithread.

En général, il est clair que rien n'est clair - juste des phrases générales, mais elles décrivent brièvement la technologie - HT permet à un cœur physique de traiter simultanément plusieurs (généralement deux) threads logiques. Mais comment ? Processeur prenant en charge l'hyperthreading :

  • peut stocker des informations sur plusieurs threads en cours d'exécution à la fois ;
  • contient un ensemble de registres (c'est-à-dire des blocs mémoire rapideà l'intérieur du processeur) et un contrôleur d'interruption (c'est-à-dire une unité de processeur intégrée responsable de la capacité de traiter séquentiellement les demandes d'apparition de tout événement nécessitant une attention immédiate, de différents appareils) par processeur logique.
Regardons un exemple simple :

Disons que le processeur a deux tâches. Si le processeur a un cœur, il les exécutera séquentiellement, s'il y en a deux, puis en parallèle sur deux cœurs, et le temps d'exécution des deux tâches sera égal au temps passé sur la tâche la plus lourde. Mais que se passe-t-il si le processeur est monocœur, mais prend en charge l'hyperthreading ? Comme vous pouvez le voir dans l'image ci-dessus, lors de l'exécution d'une tâche, le processeur n'est pas occupé à 100 % - certains blocs de processeur ne sont tout simplement pas nécessaires dans cette tâche, quelque part le module de prédiction de branchement fait une erreur (ce qui est nécessaire pour prédire si un conditionnel la branche sera exécutée dans le programme), quelque part il y a une erreur d'accès au cache - en général, lors de l'exécution d'une tâche, le processeur est rarement occupé à plus de 70 %. Et la technologie HT « insère » simplement une deuxième tâche dans des blocs de processeur inoccupés, et il s'avère que deux tâches sont traitées simultanément sur un seul cœur. Cependant, le doublement des performances ne se produit pas pour des raisons évidentes - très souvent, il s'avère que deux tâches nécessitent la même unité de calcul dans le processeur, et nous en voyons alors une simple : pendant qu'une tâche est en cours de traitement, l'exécution de la seconde est simplement arrêté à cet instant (carrés bleus - la première tâche, verts - la seconde, rouges - les tâches accédant au même bloc dans le processeur) :

En conséquence, le temps passé par un processeur avec HT sur deux tâches s'avère supérieur au temps nécessaire pour calculer la tâche la plus lourde, mais inférieur au temps nécessaire pour évaluer séquentiellement les deux tâches.

Avantages et inconvénients de la technologie

En tenant compte du fait que la puce du processeur avec prise en charge HT est physiquement plus grande que la puce du processeur sans HT de 5 % en moyenne (c'est la quantité de blocs de registres et de contrôleurs d'interruption supplémentaires utilisés), et la prise en charge HT vous permet de charger le processeur de 90 à 95 %, puis comparé à 70 % sans HT, nous obtenons que l'augmentation sera au mieux de 20 à 30 % - le chiffre est assez important.

Cependant, tout n'est pas si bon : il arrive qu'il n'y ait aucun gain de performances de HT, et il arrive même que HT détériore les performances du processeur. Cela se produit pour plusieurs raisons :

  • Manque de mémoire cache. Par exemple, les i5 quadricœurs modernes disposent de 6 Mo de cache L3, soit 1,5 Mo par cœur. Dans les i7 quadricœurs avec HT, le cache fait déjà 8 Mo, mais comme il y a 8 cœurs logiques, on n'obtient que 1 Mo par cœur - lors des calculs, certains programmes peuvent ne pas avoir assez de ce volume, ce qui entraîne une baisse performance.
  • Manque d'optimisation du logiciel. Le problème le plus fondamental est que les programmes considèrent les cœurs logiques comme physiques, c'est pourquoi lors de l'exécution de tâches en parallèle sur un cœur, des retards se produisent souvent en raison de l'accès des tâches à la même unité de calcul, ce qui réduit finalement le gain de performances de HT à néant.
  • Dépendance aux données. Cela découle du point précédent : pour accomplir une tâche, le résultat d'une autre est requis, mais il n'est pas encore terminé. Et encore une fois, nous obtenons des temps d'arrêt, une réduction de la charge CPU et une légère augmentation de HT.
Programmes pouvant fonctionner avec l'hyperthreading

Il y en a beaucoup, car pour les calculs HT, c'est une manne tombée du ciel - la dissipation thermique n'augmente pratiquement pas, le processeur ne devient pas beaucoup plus gros et, avec une optimisation appropriée, vous pouvez obtenir une augmentation allant jusqu'à 30 %. Par conséquent, sa prise en charge a été rapidement mise en œuvre dans les programmes où il est facile de paralléliser la charge - dans les archiveurs (WinRar), les programmes de modélisation 2D/3D (3ds Max, Maya), les programmes de traitement photo et vidéo (Sony Vegas, Photoshop, Corel Draw).

Programmes qui ne fonctionnent pas bien avec l'hyperthreading

Traditionnellement, c'est la majorité des jeux - ils sont généralement difficiles à paralléliser de manière compétente, donc souvent quatre cœurs physiques par hautes fréquences(i5 K-series) est plus que suffisant pour les jeux, le parallélisme pour 8 cœurs logiques dans i7 s'avère être une tâche impossible. Cependant, il convient de garder à l'esprit qu'il existe des processus en arrière-plan et que si le processeur ne prend pas en charge HT, leur traitement incombe aux cœurs physiques, ce qui peut ralentir le jeu. Ici, le i7 avec HT gagne - toutes les tâches en arrière-plan ont traditionnellement une priorité inférieure, donc lorsqu'il est exécuté simultanément sur un cœur physique du jeu et une tâche en arrière-plan, le jeu recevra une priorité accrue et la tâche en arrière-plan ne « distraira » pas les cœurs. occupé par le jeu - c'est pourquoi Pour le streaming ou l'enregistrement de jeux, il est préférable de prendre un i7 avec hyperthreading.

Résultats

Peut-être qu'il ne reste qu'une seule question ici : est-il logique de prendre des processeurs avec HT ou non ? Si vous aimez garder cinq programmes ouverts en même temps et jouer à des jeux en même temps, ou si vous êtes engagé dans le traitement de photos, de vidéos ou de modélisation, oui, bien sûr, cela vaut la peine. Et si vous avez l'habitude de fermer tous les autres avant de lancer un programme lourd, et que vous ne vous lancez pas dans le traitement ou la modélisation, alors un processeur avec HT ne vous est d'aucune utilité.

En février 2002, la technologie propriétaire d'Intel, Hyper-Threading, a fait ses débuts. Qu’est-ce que c’est et pourquoi est-ce devenu presque universel aujourd’hui ? La réponse à cette question et à bien d’autres sera discutée dans ce document.

Histoire de l'émergence de la technologie HT

Le premier processeur de bureau à prendre en charge le multithreading logique était le Pentium de quatrième génération. L'Hyper-Threading est une technologie qui a permis dans ce cas de traiter deux flux de données à la fois sur un seul cœur physique. De plus, cette puce était installée dans le socket du processeur PGA478, elle fonctionnait en mode informatique 32 bits et sa fréquence d'horloge était de 3,06 GHz. Avant cela, on ne le trouvait que dans les processeurs de serveur de la série XEON.

Après avoir obtenu de bons résultats dans ce créneau, Intel a décidé d'étendre HT au segment des ordinateurs de bureau. Par la suite, toute une famille de tels processeurs a été lancée au sein du PGA478. Après le lancement du socket LGA775, NT a été temporairement oublié. Mais avec le début des ventes du LGA1156, il a retrouvé un second souffle en 2009. Depuis lors, il est devenu un attribut obligatoire des solutions de processeurs Intel, tant dans le segment ultra-performant que dans les systèmes informatiques économiques.

Le concept de cette technologie

L'essence de la technologie Intel Hyper-Threading réside dans le fait que, grâce à des modifications minimes dans la disposition du microprocesseur, les développeurs garantissent qu'au niveau du système et du logiciel, le code est traité dans deux threads sur un cœur physique. Tous les éléments du module informatique restent inchangés, seuls des registres spéciaux et un contrôleur d'interruption repensé sont ajoutés.

Si, pour une raison quelconque, le module informatique physique commence à rester inactif, le deuxième thread de programme est lancé dessus, tandis que le premier attend la réception des données ou informations nécessaires. Autrement dit, si auparavant les temps d'arrêt dans le fonctionnement de la partie informatique des puces étaient assez fréquents, l'Hyper-Threading élimine presque complètement cette possibilité. Voyons ci-dessous ce qu'est cette technologie.

Au niveau matériel

Des exigences accrues sont imposées au matériel lors de l'utilisation de l'Hyper-Threading. La carte mère, le BIOS et le processeur doivent le prendre en charge. Au moins au sein du socket du processeur PGA478, cette compatibilité devait faire l'objet d'une attention particulière. Dans ce cas, tous les ensembles logiques du système n'étaient pas orientés vers l'utilisation de NT, tout comme les processeurs. Et même si dans la nomenclature carte mère Si l’abréviation tant convoitée était présente, cela ne signifiait pas que les puces étaient correctement initialisées car le BIOS devait être mis à jour.

La situation dans ce cas a radicalement changé depuis LGA1156. Cette plateforme informatique a été initialement conçue pour l’utilisation de l’Hyper-Threading. Par conséquent, les utilisateurs n’ont rencontré aucun problème important lors de l’utilisation de ce dernier dans ce cas. Il en est de même pour les suivantes sockets de processeur tels que LGA1155, LGA1151 et LGA1150.

Les sockets hautes performances LGA1366, LGA2011 et LGA2011-v3 pourraient se vanter d'un manque similaire de problèmes avec l'utilisation de HT. Pour couronner le tout, le concurrent direct d'Intel, AMD, a implémenté une technologie multitâche logique très similaire - SMT - dans la dernière génération de ses processeurs pour AM4. Il utilise un concept presque identique. La seule différence réside dans le nom.

Principaux composants du côté logiciel

Il convient de noter que même si NT est entièrement pris en charge par les ressources matérielles, il ne fonctionnera pas toujours correctement au niveau logiciel. Pour commencer système opérateur doit être capable de travailler simultanément avec plusieurs cœurs de calcul. Les versions obsolètes actuelles du logiciel système MS-DOS ou Windows 98 ne disposent pas de cette fonctionnalité. Mais dans Cas de Windows 10 aucun problème ne se pose, et ce système d'exploitation est déjà conçu pour de telles ressources matérielles dès le début ordinateur personnel.

Voyons maintenant comment activer l'Hyper-Threading sous Windows. Pour ce faire, tous les logiciels d'application de contrôle nécessaires doivent être installés sur l'ordinateur. Généralement, c'est utilitaire spécialà partir du CD de la carte système. Il dispose d'un onglet spécial où vous pouvez modifier les valeurs dans le BIOS en temps réel. Ceci, à son tour, conduit au fait que l'option Hyper-Threading passe à la position Activé et que des threads logiques supplémentaires sont activés, même sans redémarrer le système d'exploitation.

Technologie habilitante

De nombreux utilisateurs novices posent assez souvent une question au stade initial de l'utilisation d'un nouvel ordinateur : question importante concernant l'Hyper-Threading : comment l'activer ? Il y en a deux moyens possibles solutions à ce problème. L'un d'eux utilise le BIOS. Dans ce cas, vous devez procéder comme suit :

  • Lorsque vous allumez le PC, nous initialisons la procédure d'entrée dans le BIOS. Pour ce faire, maintenez simplement le bouton DEL enfoncé lorsque l'écran de test apparaît (dans certains cas, vous devez maintenir enfoncé F2).
  • Après l'apparition écran bleu continuer avec la candidature touches de navigationà l'onglet AVANCÉ.
  • Ensuite, nous trouvons l'élément Hyper-Threading dessus.
  • En face, vous devez définir la valeur sur Activé.

Inconvénient majeur cette méthode- c'est la nécessité de redémarrer l'ordinateur personnel pour effectuer cette opération. Une véritable alternative consiste à utiliser l’utilitaire de configuration de la carte mère. Cette méthode a été décrite en détail dans la section précédente. Et dans ce cas, il n'est pas du tout nécessaire d'entrer dans le BIOS.

Désactivation de NT

Par analogie avec les méthodes d'activation de NT, il existe deux manières de désactiver cette fonction. L'une d'entre elles ne peut être réalisée que lors de l'initialisation du système informatique. Ceci, à son tour, n’est pas tout à fait pratique en pratique. Les experts optent donc pour la deuxième méthode, qui repose sur l’utilisation d’un utilitaire informatique sur la carte mère. Dans le premier cas, les manipulations suivantes sont effectuées :

  1. Lors du chargement d'un ordinateur électronique, on entre dans le système d'entrées-sorties de base (son deuxième nom est BIOS) selon la méthode décrite précédemment.
  2. Nous nous déplaçons à l'aide des touches du curseur jusqu'à l'élément de menu Avancé.
  3. Ensuite, vous devez trouver l'élément de menu Hyper-Threading (dans certains modèles de cartes mères, il peut être désigné par HT). En face, à l'aide des boutons PG DN et PG UP, réglez la valeur sur Désactivé.
  4. Nous enregistrons les modifications démolies en utilisant F10.
  5. Quittez le BIOS et redémarrez l'ordinateur personnel.

Dans le second cas, lors de l'utilisation de l'utilitaire de diagnostic de la carte mère, il n'est pas nécessaire de redémarrer le PC. C'est son principal avantage. L'algorithme dans ce cas est identique. La différence est qu'il utilise un utilitaire spécial préinstallé du fabricant de la carte mère.

Auparavant, deux méthodes principales pour désactiver l'Hyper-Threading étaient décrites. Bien que le second d’entre eux soit nominalement considéré comme plus complexe, il est plus pratique car il ne nécessite pas de redémarrage de l’ordinateur.

Modèles de processeur prenant en charge NT

Initialement, comme indiqué précédemment, la prise en charge de l'Hyper-Threading n'était implémentée que dans les processeurs Pentium de la série 4 et uniquement dans la version PGA478. Mais déjà dans le cadre des plates-formes informatiques LGA1156 et ultérieures, la technologie évoquée dans ce document a été utilisée dans presque tous les modèles de puces possibles. Avec son aide, les processeurs Celeron sont passés d'une solution monocœur à une solution double thread. À leur tour, Penrium et i3 pourraient déjà traiter 4 flux de code avec son aide. Eh bien, les solutions phares de la série i7 sont capables de fonctionner simultanément avec 8 processeurs logiques.

Pour plus de clarté, nous présentons l'utilisation de NT au sein de la plate-forme informatique actuelle d'Intel - LGA1151 :

  • Les processeurs de la série Celeron ne prennent pas en charge cette technologie et ne disposent que de 2 unités de calcul.
  • Les puces de la ligne Pentium sont équipées de 2 cœurs et de quatre threads. En conséquence, NT est dans ce cas entièrement pris en charge.
  • Les processeurs plus puissants ont une disposition similaire. gamme de modèles Core i3 : 2 modules physiques peuvent fonctionner en 4 threads.
  • Comme la plupart des puces Celeron économiques, le Core i5 n'est pas équipé du support HT.
  • Les solutions phares i7 prennent également en charge HT. Seulement dans ce cas, au lieu de 2 vrais cœurs, il y a déjà 4 unités de traitement de code. À leur tour, ils peuvent déjà travailler dans 8 threads.

Hyper-Threading – qu'est-ce que cette technologie et quel est son objectif principal ? Il s'agit d'un multitâche logique, qui permet, avec un minimum d'ajustements, matériel augmenter les performances du système informatique dans son ensemble.

Dans quels cas cette technologie est-elle mieux utilisée ?

Dans certains cas, comme indiqué précédemment, NT augmente la vitesse à laquelle le processeur traite le code du programme. L'Hyper-Threading ne peut fonctionner efficacement qu'avec des logiciels chauds. Des exemples typiques sont les encodeurs vidéo et audio, les progiciels graphiques professionnels et les archiveurs. De plus, la présence d’une telle technologie peut améliorer considérablement les performances. système de serveur. Mais avec une implémentation monothread code de programme La présence de l'Hyper-Threading est nivelée, c'est-à-dire qu'on obtient un processeur ordinaire qui résout une tâche sur un cœur.

Avantages et inconvénients

Manger certains inconvénients avec la technologie Intel Hyper-Threading. Le premier d’entre eux est l’augmentation du coût du processeur. Mais une plus grande vitesse et une meilleure disposition des puces de silicium augmenteront dans tous les cas le prix du processeur. En outre, l'augmentation de la surface de la base semi-conductrice du processeur entraîne une augmentation de la consommation d'énergie et de la température. La différence dans ce cas est insignifiante et ne dépasse pas 5 %, mais elle existe toujours. Il n'y a pas d'autres lacunes significatives dans ce cas.

Parlons maintenant des avantages. La technologie propriétaire NT d'Intel n'affecte pas les performances, c'est-à-dire qu'un tel ordinateur ne pourra pas descendre en dessous d'un certain seuil. Si le logiciel prend parfaitement en charge le calcul parallèle, il y aura alors une certaine augmentation de la vitesse et, bien sûr, de la productivité.

Les tests montrent que dans certains cas, l'augmentation peut atteindre 20 %. Les logiciels les plus optimisés dans ce cas sont divers transcodeurs de contenu multimédia, archiveurs et progiciels graphiques. Mais avec les jeux, tout ne va pas si bien. À leur tour, ils sont capables de fonctionner sur 4 threads et, par conséquent, les puces phares ne sont pas en mesure de surpasser les solutions de processeur de niveau intermédiaire dans ce cas.

Une alternative moderne d'AMD

La technologie Hyper-Threading n’est pas la seule de ce type aujourd’hui. Elle a une vraie alternative. Avec la sortie de la plateforme AM4, AMD lui a proposé un digne concurrent sous la forme de SMT. Au niveau matériel, ce sont des solutions identiques. Seul le produit phare d'Intel peut traiter 8 threads, et la puce AMD leader peut en traiter 16. Cette circonstance à elle seule indique que la deuxième solution est plus prometteuse.

Par conséquent, Intel est obligé d'ajuster de toute urgence ses plans de sortie de produits et de proposer des solutions de processeurs complètement nouvelles qui peuvent rivaliser avec les nouveaux arrivants d'AMD. Seulement aujourd'hui, ils n'ont pas encore été réorganisés. Par conséquent, si vous avez besoin d'une plate-forme informatique abordable, il est préférable de choisir le LGA1151 d'Intel. Si vous avez besoin d’une amélioration des performances, alors l’AM4 d’AMD serait préférable.

© 2024 ermake.ru -- À propos de la réparation de PC - Portail d'information