
En 2005, les puces Symmetric Multithreading (SMT) et multicoeur (MC) entreront dans les entreprises. Tous les constructeurs introduisent ces technologies, poussés par la course à la fréquence qui montre ses limites avec des processeurs trop consommateurs de courant et dissipateurs de chaleur. Pour améliorer la performance, SMT et MC renforcent les capacités de traitement parallèle des puces : au lieu d'exécuter de plus en plus vite une seule tâche à la fois, le processeur en traite plusieurs simultanément, non pas sur le mode multitâche, qui repose sur un partage du temps processeur entre différents traitements, mais sur un mode où les exécutions sont réellement simultanées. C'est ce que savent faire les systèmes multiprocesseurs SMP (Symmetric Multiprocessor) depuis longtemps en multipliant les puces, alors que SMT et MC le font par densification des puces.
Des puces plus denses
Dans la technologie MC, chaque puce reçoit plusieurs coeurs de traitement complets, chacun avec ses registres, ses unités d'exécution, son cache... Les coeurs ainsi intégrés partagent leur accès au bus système, ce qui limite les performances par rapport à une architecture SMP classique, même si le système d'exploitation les voit de la même façon. Sur chacun de ces coeurs, on exécute soit des applications différentes, soit des threads, qui sont des sous-tâches d'un même processus applicatif. Liés par un contexte d'exécution très proche, ces threads peuvent ainsi partager des ressources, tout en dépendant peu du système pour communiquer entre eux. Pour le SMT, en revanche, le coeur de traitement (registres principaux et unités d'exécution) reste unique. Mais les éléments qui l'alimentent en instructions et en données sont multipliés. Ils préparent les traitements comme s'il y avait plusieurs coeurs, et se synchronisent pour occuper au mieux les ressources du seul coeur disponible. Le processeur devient capable d'exécuter plusieurs threads, mais pas plusieurs applications : les gains apportés par SMT sont totalement dépendants de la façon dont sont écrites les applications. Là encore, l'OS voit autant de processeurs qu'il y a d'unités d'alimentation. On peut combiner les technologies pour obtenir des puces à la fois MC et SMT, comme les Power5 d'IBM.
Les gains à attendre sont variables. Une puce à deux coeurs sera de 40 à 80 % plus performante qu'une puce à un coeur, surtout dans un environnement multi-applicatif. Avec SMT, il faut espérer de 10 à 30 % de performances additionnelles en passant d'une puce monothread à une puce bithread, avec des pointes pouvant dépasser les 40 %, mais aussi parfois un ralentissement ! Dans les deux cas, les gains dépendent de l'environnement de l'utilisateur : nombre et nature des applications, capacités de l'OS... Rien n'est acquis sur le papier, seuls des tests détermineront les vrais bénéfices, qui devraient s'accroître lorsque les applications et les systèmes seront mieux optimisés.
Alors que le multicoeur revient à associer deux processeurs complets sur une puce, le multithread consiste à mieux utiliser les capacités de traitement en préparant deux flux d'instructions en parallèle avant de les exécuter.
![]() |
Art
Tour de marché à la FIAC.
|
|
![]() |
> Logiciel : F-Secure
Internet Security 2010 Profitez de notre offre promotionnelle de - 20 %!
|
|
1 Orange
2 Free
3 Bouygues Telecom
> Plus de détails

![]() |
Service Kiosque :
Préservez la nature en téléchargeant vos magazines en illimité !
|
|
