prix

| 25/10/2004
Accès direct :

Sun Niagara

Jusqu'à présent, nous avons abordé les designs classiques, de type "fat", c'est-à-dire avec un core complexe, super-scalaire et souvent un pipeline assez long. Parfois, deux cores fat peuvent être mis sur le même die, c'est le bi-core dans la forme que nous avons étudiée jusqu'ici. En général, le core est doté d'un cache L1 compris entre 8 et 128 Ko selon la nature des caches, d'un L2 de taille moyenne, entre 256 Ko et 2 Mo, et d'un L3 de 2 à 9 Mo (l'Itanium Montecito étant un cas extrême). Ainsi, le cache représente souvent 2/3 de la surface du die, ou plus. Le Montecito est le stéréotype des CPU de type fat. Le Niagara, lui, se démarque complètement. Constatant les problèmes cités dans les pages précédentes, Sun Microsystems a en effet décidé d'aborder le problème d'une toute autre manière. La firme a choisi d'intégrer pas moins de 8 cores sur le même die, mais extrêmement simples, pas même super-scalaires, avec un petit cache L1, et un pipeline très court, vraisemblablement de 4 à 6 niveaux seulement. De plus, même si le cache L2 est probablement d'une taille élevée, 3 Mo semble-t-il, il est dépourvu de cache L3, ainsi la mémoire cache ne représente plus que 50% à peine de la surface du die.

Image

source : Ace's Hardware

Le Niagara est donc optimisé TLP, pour Thread Level Parallelism. Plus qu'une simple technologie, il s'agit d'un principe déterminant l'organisation générale du CPU, correspondant aux caractéristiques du Niagara. L'idée est d'avoir plus de cores très simples, avec un pipeline court, un très bon rendement, et une fréquence relativement basse (de l'ordre de 1,5 GHz pour le Niagara). Non seulement un CPU TLP est capable d'offrir de très bonnes performances mais en plus la fréquence nettement réduite permet de diminuer considérablement la consommation électrique et donc la dissipation thermique. Ce dernier point est très important pour un microprocesseur destiné à faire partie d'un serveur dans un rack 1U.

Mais le premier représentant de la toute nouvelle architecture de Sun ne se contente pas de ses 8 cores, puisque chaque core est capable de gérer 4 contextes en CMT, soit deux fois plus que ceux de l'Itanium dont les cores sont pourtant bien plus complexes. Constitué de 8 cores chacun capable de CMT 4-ways, le Niagara se révèle être un CPU massivement multi-thread puisque il peut gérer 8 * 4 = 32 threads ! Certes, cette véritable cascade de threads n'a aucun intérêt pour un usage bureautique, mais pour un serveur de base de données ou même d'hébergement de gros site Internet, un tel nombre de threads s'avère particulièrement intéressant pour gérer le flux intense de requêtes se présentant.

Image

Petite spécificité sur ce schéma, les cases bariolées de rouge ou de bleu représentent un autre thread, différent des cases de même couleur non bariolées. De plus, afin de garder un rendement optimal, les caches L1 du Niagara devraient avoir une taille très réduite afin de conserver une latence d'un seul cycle (contre 3 pour un Athlon XP par exemple). Pour compenser la petite taille des L1, le L2 est assez important mais il doit se partager entre les 8 cores, contrairement aux processeurs bi-core tels que l'Opteron, le Montecito, le Yonah, ou le Smithfield qui ont un L2 par core. Un cache L2 partagé permet d'éviter les problèmes de cohérence des caches, contraignant le CPU à recopier les informations d'un cache L2 à l'autre. Si l'information indiquant que la taille du cache L2 est de 3 Mo s'avère vraie, cela signifie que chaque core se voit allouer en moyenne 384 Ko, ce qui est bien moins que les processeurs cités plus haut. Certes, les cores ne sont pas super-scalaires et nécessitent par conséquent un flux d'instructions moins important. Néanmoins, leur rendement est très bon, il faut donc un flux d'instructions assez conséquent et le cache L2 peut parfois faire défaut. C'est pourquoi Sun a fait le choix d'une architecture mémoire DDR-2 quad-channel pouvant offrir des débits très élevés. Vraisemblablement, le contrôleur mémoire sera intégré au CPU, de même qu'éventuellement un contrôleur Ethernet Gigabit et d'autres fonctions habituellement gérées par le chipset ; et tout ceci dans le but de réduire au maximum les latences et d'éviter les goulots d'étranglement.

Au final, le Niagara, s'il intègre ces fonctions, pourrait s'avérer être un processeur très performant dans le domaine précis auquel il est destiné, et consommant peu par rapport à la concurrence. Très peu dépendant des optimisations car très simple et non super-scalaire, il ne serait pas contraignant pour les développeurs. À titre informatif, les premiers samples de Niagara ont déjà été produits et fonctionnent sous Solaris, le système d'exploitation de Sun Microsystems, lui-même optimisé pour des processeurs TLP. Assez complet car intégrant probablement des composants tels que le contrôleur mémoire, le contrôleur Ethernet, etc., le Niagara permettrait de réduire les coûts de fabrication du reste du système, notamment du chipset qui pourrait, par exemple, être monochip, à l'image du nForce 3 de NVIDIA et de son successeur le nForce 4. Ce dernier point est particulièrement intéressant pour Sun qui ne vend pas de CPU au détail mais des systèmes complets. Par conséquent, réduire les coûts de production du système entier revient à augmenter la marge pour un prix de vente donné, ou à réduire ce prix.

 
 
 

Actualités relatives Processeurs