Aujourd'hui, presque tous les CPU sont multi-cœurs : ils contiennent plusieurs unités de traitement qui peuvent exécuter différentes tâches en simultané.
Cependant, les avantages d'ajouter davantage de cœurs ne sont pas toujours clairement définis. Quelle est la différence entre les applications mono-thread et multithread ? Qu'est-ce que l'hyper-threading et en quoi diffère-t-il du multi-threading normal ?
Pour expliquer les avantages de cœurs additionnels et de la technologie Intel® Hyper-Threading, parcourons ces termes et expliquons ce qu'ils signifient pour l'exécution des jeux et des applications de tous les jours.
Qu'est-ce que le multi-threading ?
Le multi-threading est une forme de parallélisation ou de division du travail pour un traitement simultané. Au lieu de donner une charge de travail importante à un seul cœur, les programmes threaded divisent le travail en plusieurs tâches (threads) logicielles. Ces tâches sont traitées en parallèle par différents cœurs de processeurs pour gagner du temps.
Selon la façon dont ils sont construits, les jeux peuvent être légèrement ou fortement threaded. Certains moteurs de jeu plus anciens sont connus pour leur dépendance aux performances single-threaded : ils utilisent principalement un seul cœur de processeur et bénéficient d'une impulsion majeure grâce à des vitesses d'horloge plus élevées.
Aujourd'hui, les moteurs de jeu comme Unreal Engine 4 utilisent plusieurs cœurs lors de la création de scènes complexes2. Les moteurs peuvent également utiliser le multi-threading pour traiter différentes parties des "draw calls" - des instructions envoyées par le CPU au GPU concernant les objets, les textures et les nuanceurs du jeu à dessiner.
Qu'est-ce que l'hyper-threading ?
La technologie Intel® Hyper-Threading est une innovation matérielle qui permet d'exécuter plusieurs threads sur chaque cœur. Davantage de threads signifie que davantage de tâches peuvent être exécutées en parallèle.
Comment fonctionne l'hyper-threading ? Lorsque la technologie Intel® Hyper-Threading est active, le CPU expose deux contextes d'exécution par cœur physique. Cela signifie qu'un cœur physique fonctionne alors comme deux "cœurs logiques" qui peuvent gérer différentes tâches logicielles.
Deux cœurs logiques peuvent accomplir les tâches plus efficacement qu'un cœur mono-thread traditionnel. En tirant parti du temps d'inactivité pendant lequel le cœur attend habituellement que d'autres tâches se terminent, la technologie Intel® Hyper-Threading améliore le débit du processeur.
Vous vous demandez comment activer l'Hyper-Threading ? Elle est activée par défaut, mais peut être activée et désactivée depuis l'environnement du BIOS en configurant le paramètre « Hyper-Threading Technology » sur « Enable » (Activer) ou « Disable » (Désactiver). Notez que la technologie Intel® Hyper-Threading n'est disponible que sur certains CPU de passionnés : voir la liste complète ici.
Quels sont les avantages de l'Hyper-Threading ?
Grâce à l'Hyper-Threading CPU, un PC peut traiter plus d'informations en moins de temps et exécuter plus de tâches en arrière-plan sans perturbation. Dans les bonnes conditions, la technologie permet aux cœurs des processeurs de faire efficacement deux choses à la fois. Les multitâches, streamers et les professionnels qui exécutent des programmes fortement parallélisés peuvent améliorer leur expérience informatique en passant à un CPU pour PC portable ou PC de bureau de jeu avec la technologie Intel® Hyper-Threading.