Les processeurs multicœurs sont disponibles sur les ordinateurs personnels depuis la fin des années 1990. Les conceptions multicœurs ont résolu le problème du fait que les processeurs atteignaient leurs limites physiques en termes de vitesse d'horloge et d'efficacité avec laquelle ils pouvaient être refroidis tout en maintenant la précision. En optant pour des cœurs supplémentaires sur la puce à processeur unique, les fabricants ont évité les problèmes de vitesse d'horloge en multipliant efficacement la quantité de données pouvant être gérées par le processeur.
Au moment de leur sortie, il ne s'agissait que de deux cœurs dans un seul processeur, mais il existe maintenant des options pour quatre, six et même dix ou plus. Outre l'ajout de cœurs, la technologie Hyper-Threading d'Intel double pratiquement les cœurs vus par le système d'exploitation.
Le fait d’avoir deux cœurs dans un seul processeur a toujours eu des avantages tangibles grâce à la nature multitâche des systèmes d’exploitation modernes. Après tout, vous naviguez peut-être sur le Web ou vous tapez un rapport alors qu’un programme antivirus s’exécute en arrière-plan. La vraie question pour beaucoup de gens peut être de savoir si en avoir plus de deux est vraiment bénéfique et si oui, combien?
Filetage
UNE fil est simplement un flux de données provenant d’un programme passant par le processeur de l’ordinateur. Chaque application génère son propre ou plusieurs threads en fonction de la manière dont elle s'exécute. Avec le traitement multitâche, un processeur à cœur unique ne peut gérer qu'un seul thread à la fois, de sorte que le système bascule rapidement entre les threads pour traiter les données de manière apparemment simultanée.
L'avantage d'avoir plusieurs cœurs est que le système peut gérer plusieurs threads. Chaque noyau peut gérer un flux de données séparé. Cette architecture augmente considérablement les performances d'un système qui exécute des applications simultanées. Étant donné que les serveurs ont tendance à exécuter plusieurs applications simultanées à un moment donné, la technologie a été initialement développée pour les entreprises, mais à mesure que les ordinateurs personnels devenaient de plus en plus complexes et que le multitâche augmentait, ils bénéficiaient également de cœurs supplémentaires.
Dépendance logicielle
Bien que le concept de processeurs multicœurs semble séduisant, cette technologie pose un problème majeur. Pour que les avantages réels des multiples processeurs soient visibles, le logiciel en cours d'exécution sur l'ordinateur doit être conçu pour prendre en charge le multithreading. Sans le logiciel prenant en charge une telle fonctionnalité, les threads seront principalement exécutés sur un seul cœur, ce qui réduira l'efficacité. Après tout, s’il ne peut s’exécuter que sur un seul cœur dans un processeur quadricœur, il sera peut-être plus rapide de l’exécuter sur un processeur bicœur avec des fréquences d’horloge de base plus élevées.
Tous les principaux systèmes d'exploitation actuels prennent en charge la fonctionnalité multithreading. Mais le multithreading doit également être écrit dans le logiciel d'application. La prise en charge du multithreading dans les logiciels grand public s'est améliorée au fil des ans, mais pour de nombreux programmes simples, la prise en charge du multithreading n'est toujours pas implémentée en raison de la complexité de la construction du logiciel. Par exemple, un programme de messagerie ou un navigateur Web ne présente pas d’énormes avantages pour le multithreading autant qu’un programme de montage graphique ou vidéo, où l’ordinateur traite des calculs complexes.
Un bon exemple pour expliquer cette tendance est de regarder un jeu informatique typique. La plupart des jeux nécessitent une forme de moteur de rendu pour afficher ce qui se passe dans le jeu. En outre, une sorte d'intelligence artificielle contrôle les événements et les personnages du jeu. Avec un seul noyau, les deux doivent fonctionner en basculant entre les deux. Cette approche n'est pas efficace. Si le système avait plusieurs processeurs, le rendu et l'IA pourraient s'exécuter sur un cœur séparé, ce qui constitue une situation idéale pour un processeur à plusieurs coeurs.
Est-ce que 4> 2?
Aller au-delà de deux cœurs représente un défi conceptuel, étant donné que la réponse de tout acheteur d’ordinateur dépend du logiciel qu’il utilise habituellement. Par exemple, de nombreux jeux n'offrent toujours qu'une faible différence de performances entre deux et quatre cœurs. Il n’existe pour l’essentiel aucun jeu qui tire parti d’avantages tangibles au-delà de quatre cœurs de processeur.
D'autre part, un programme de codage vidéo qui transcodera la vidéo présentera vraisemblablement d'énormes avantages, car le rendu des images individuelles peut être transmis à différents cœurs puis rassemblé par le logiciel dans un seul flux. Ainsi, avoir huit cœurs sera encore plus avantageux que d’en avoir quatre.
Vitesses d'horloge
Plus la vitesse d'horloge est élevée, plus le processeur est rapide. Les vitesses d'horloge deviennent plus nébuleuses si vous considérez les vitesses relatives à plusieurs cœurs car les processeurs crunch plusieurs threads de données grâce aux cœurs supplémentaires, mais chacun de ces cœurs fonctionnera à des vitesses plus basses en raison des restrictions thermiques.
Par exemple, un processeur bicœur peut prendre en charge des vitesses d'horloge de base de 3,5 GHz pour chaque processeur, tandis qu'un processeur quadricœur ne peut fonctionner qu'à 3,0 GHz. En regardant un seul cœur sur chacun d’eux, le processeur double cœur sera environ 14% plus rapide que sur le quadricœur. Ainsi, si vous avez un programme qui ne comporte qu'un seul thread, le processeur double cœur est en réalité plus efficace. Là encore, si votre logiciel peut utiliser les quatre processeurs, le processeur quad-core sera en réalité environ 70% plus rapide que ce processeur dual-core.
Conclusions
Généralement, il est préférable d’avoir un processeur avec un nombre de cœurs plus élevé si votre logiciel et vos cas d’utilisation typiques le prennent en charge. Dans la plupart des cas, un processeur bicœur ou quadricœur sera suffisamment puissant pour un utilisateur d'ordinateur de base.Au-delà de quatre cœurs de processeur, la majorité des consommateurs ne verront aucun avantage tangible, car il existe si peu de logiciels non spécialisés qui peuvent en tirer parti. Les seules personnes qui devraient envisager de tels processeurs à grand nombre de cœurs sont celles qui effectuent des tâches complexes telles que le montage vidéo sur ordinateur de bureau ou des programmes compliqués de sciences et de mathématiques.
Consultez notre page À quelle vitesse d'un PC ai-je besoin? article pour avoir une meilleure idée du type de processeur le mieux adapté à vos besoins informatiques.