Manie multicœur

Cet article fait partie 1 d'une série en deux parties ; la partie 2 paraîtra le vendredi 16 décembre.





Lorsque vous ne pouvez pas faire fonctionner un microprocesseur plus rapidement, que faites-vous ? Vous combinez bien sûr deux cœurs de microprocesseur ou plus.

Intel et AMD, les principaux concurrents de l'industrie, ont déjà introduit des puces double cœur pour les ordinateurs de bureau. Et ce n'est que le début d'une tendance qui pourrait apporter un changement important aux PC : le traitement multicœur. Ces deux principaux fabricants de puces espèrent intégrer quatre cœurs dans des puces de PC de bureau d'ici 2007. Et les chercheurs d'Intel étudient comment mettre des dizaines, voire des centaines de cœurs sur une seule puce.

Les fabricants de puces et les fabricants de PC ont besoin de puces multicœurs pour une raison importante : ils ont manqué de marge de performance sur les conceptions existantes. (Pendant des années, les fabricants de puces ont ajouté des transistors et augmenté les vitesses d'horloge pour accélérer le fonctionnement des processeurs. Mais les vitesses d'horloge ne peuvent être augmentées que dans une certaine mesure avant qu'une puce ne dégage trop de chaleur à l'intérieur du boîtier du PC.)



Mais pourquoi l'utilisateur moyen d'un PC a-t-il besoin de deux, quatre ou huit cœurs sur une puce ? Pour commencer, pensez multitâche. J'appelle le multitâche la « killer app » silencieuse, déclare Shane Rau, responsable du programme de recherche sur les semi-conducteurs à la société d'études de marché IDC. Aujourd'hui, toutes les applications que nous utilisons réduisent à néant le processeur.

La plupart des applications individuelles fonctionnent déjà bien – seules. Mais, comme tout utilisateur de Windows le sait, l'exécution simultanée de plusieurs programmes, par exemple un traitement de texte, un lecteur audio et un logiciel antivirus, finira par faire apparaître le sablier indésirable. Le traitement multicœur pourrait mettre fin à cette période d'attente.

De plus, étant donné les menaces de sécurité en constante évolution d'aujourd'hui, les exigences en matière de multitâche ne feront qu'augmenter, selon les observateurs de l'industrie. La plupart des gens continueront à utiliser plus d'applications simultanément, tandis que les PC devront exécuter plus de programmes de sécurité en arrière-plan juste pour se protéger.



En particulier, les tâches de streaming audio et vidéo peuvent monopoliser les ressources du microprocesseur. Intel pense que plusieurs cœurs seront bien meilleurs pour des tâches telles que le téléchargement de vidéos d'un PC vers un lecteur multimédia personnel. Et les prochains processeurs multicœurs d'Intel sont plus froids que les originaux, ce qui pourrait conduire à des conceptions innovantes de boîtiers pour ordinateurs portables et de bureau. La puce dual-core de la société, surnommée Yonah, devrait faire ses débuts début 2006.

Au salon international de l'électronique grand public à Las Vegas le mois prochain, le fabricant de PC taïwanais AOpen prévoit de faire la démonstration d'une machine alimentée par Yonah de la taille du mini-ordinateur de bureau Mac d'Apple, qui mesure 17 centimètres de large, 17 centimètres de profondeur et 5 centimètres de haut. Yonah a joué un grand rôle dans la récente décision d'Apple d'acheter des puces Intel, selon Kevin Krewell, rédacteur en chef d'In-Stat's Rapport du microprocesseur , car Yonah permettra des ordinateurs portables Powerbook plus rapides.

Erreurs du premier tour



Les premières puces bicœur, telles que le Pentium D d'Intel, ont reçu des critiques mitigées, principalement parce que leurs gains de performances n'étaient pas impressionnants lors de l'exécution de logiciels conçus pour les processeurs monocœur traditionnels. Pour vraiment exploiter la puissance des puces à double cœur ou multicœurs, les applications logicielles doivent être écrites ou réécrites pour tirer parti de deux cœurs ou plus, un processus appelé multithreading.

Les programmeurs ont déjà intégré le multithreading dans les systèmes d'exploitation Windows XP, Linux et Mac OS X, de sorte qu'ils peuvent utiliser la puissance d'un processeur pour les tâches d'arrière-plan du système et l'autre processeur pour, par exemple, une application exigeante telle que l'affichage de vidéo. D'un autre côté, de nombreux fournisseurs d'applications, y compris les fabricants de jeux, n'ont pas encore révisé leurs applications.

Nous avons aujourd'hui un logiciel multithread dans les applications serveur évolutives, mais il est plus rare dans les applications clientes pour ordinateurs de bureau, explique Krewell. Adobe a adopté le multithreading pour les logiciels de création de contenu, notamment Adobe Photoshop ; mais la plupart des autres éditeurs de logiciels d'application ne l'ont pas encore fait.



De plus, cette première série de puces – y compris l'Athlon 64 X2 Dual-Core d'AMD et le Pentium D d'Intel – produit toujours plus de chaleur que les concepteurs ne le souhaiteraient. Cela oblige les double cœurs à s'abaisser parfois et à fonctionner à des vitesses inférieures à leurs vitesses d'horloge maximales potentielles. Ainsi, en fait, les joueurs et autres utilisateurs d'applications à haute intensité ont souvent intérêt à utiliser un PC basé sur une puce monocœur puissante comme l'Athlon 64 FX d'AMD.

Une plus grande vague d'applications multithread arrivera lorsque le système d'exploitation Windows Vista de Microsoft sera disponible à l'automne 2006, selon Rau d'IDC.

Tout aussi important, la prochaine génération de puces Intel dual-core consommera moins d'énergie, gardant ainsi leur sang-froid sans compromis. Nommées Conroe pour les ordinateurs de bureau, Merom pour les ordinateurs portables et Woodcrest pour les serveurs, ces puces devraient également faire leurs débuts à l'automne 2006.

Huit, c'est assez ?

Les conceptions multicœurs seront la tendance dominante des microprocesseurs pour cette décennie et au-delà, selon Intel et AMD. D'ici 2007, les deux sociétés prévoient de proposer des microprocesseurs quadricœurs pour les ordinateurs de bureau grand public. Et Intel pourrait introduire des puces à huit cœurs dès 2008, prédisent certains analystes.

Vous devez synchroniser l'introduction du matériel avec le logiciel, explique Phil Hester, directeur de la technologie d'AMD. Passer à deux cœurs est une très bonne réponse pour de nombreuses applications aujourd'hui.

Alors qu'AMD planifie ses futures puces, y compris quad-core, il doit équilibrer les coûts de production des puces et les avantages logiciels. Par exemple, une puce à trois cœurs et une grande quantité de mémoire cache peut offrir plus pour son argent qu'une puce à quatre cœurs, dit Hester. En effet, de nombreuses applications, y compris des applications exigeantes comme Adobe Photoshop, utilisent la mémoire cache pour accélérer les tâches. Il peut être plus logique pour nous de dépenser moins de cœurs et d'inclure plus de cache, dit Hester.

Les cœurs spécialisés conçus pour exceller dans certaines tâches, par exemple les graphiques, la navigation Web ou les tâches de sécurité, sont une autre possibilité qui pourrait donner aux utilisateurs de machines multicœurs un retour sur investissement important en termes de performances. Vous pouvez avoir un cœur exécutant votre flux XML tandis qu'un autre fait le travail standard du PC, dit Hester, mentionnant qu'AMD étudie ce type de conception.

L'intégration de plus de cœurs dans un microprocesseur n'est cependant que le début des défis de conception auxquels les entreprises de matériel et de logiciels seront confrontées à l'ère du multithreading. Le processeur le plus rapide au monde attendra toujours si la mémoire principale d'un système ne peut pas suivre le rythme. Et ce problème va s'aggraver si une puce a des centaines de cœurs.

A venir demain : Nous examinons de plus près les défis matériels et logiciels avec plusieurs cœurs. Quels obstacles doivent être surmontés avant que le traitement multicœur puisse tenir ses promesses ?

Laurianne McLaughlin est une rédactrice technologique basée dans la région de Boston.

cacher