ArticleInfrastructure & Cloud
Processeurs : Dans les entrailles de l'Itanium
L'Itanium, le premier processeur 64 bit d'Intel, se sera fait attendre. Sept ans après l'annonce par le fondeur d'une collaboration avec HP pour mettre au point une puce 64 bit, le fruit de leur travail, connu un temps sous le nom de code Merced http://www.weblmi.com/news/1998/981016%2D4.htm, a enfin fait son entrée ce 29 mai dans les serveurs et les stations de travail. On passera sur les multiples retards de livraison : un temps envisagée en 1998, la commercialisation de l'Itanium a régulièrement été repoussée http://www.weblmi.com/daily/2000/0720/itanium.htm. Pourtant, le processeur est techniquement prêt depuis plus d'un an. Sa livraison tardive s'expliquant par une phase longue et extensive de tests des quelque 7 000 exemplaires http://www.weblmi.com/daily/2000/0823/developer.htm de pré-production.
L'Itanium est le premier membre de la famille IA-64 (pour Intel Architecture 64 bit) qui s'enrichira avec les puces aux noms de code McKinley http://www.weblmi.com/daily/2001/0301/processeurs.htm, Madison et Deerfield. Son principal atout est de repousser les limites des processeurs 32 bits dans la gestion des calculs scientifiques et des entrepôts de données les plus lourds.
Epic contre Cisc et Risc
Avec l'Itanium, Intel met de côté l'architecture Cisc (Complex instruction set computer) des processeurs de classe x86/Pentium pour l'architecture Epic (Explicit parallel instruction computing). Le processeur peut traiter jusqu'à vingt instructions en parallèle par cycle d'horloge. Cette parallélisation est réalisée non pas au niveau du processeur (comme c'est le cas avec les processeurs Cisc et Risc, pour lesquels on parle de parallélisme implicite), mais du compilateur. Ce dernier optimise les instructions qui sont ensuite traitées par le processeur à l'aide du mécanisme ILP (Instruction-level parallelism).
L'utilisation de fonctions de prédiction et de spéculation figurent au coeur de l'architecture Epic. Là encore, le rôle du compilateur est essentiel. Avec la prédiction, il anticipe les branches de code qui seront exécutées par le processeur. Quant à la méthode de spéculation, elle permet au compilateur de fournir au processeur des instructions avant même que celles-ci ne soient nécessaires, réduisant ainsi les temps de latence dues au transfert du code depuis la mémoire.
Une cache de niveau 3 de 2 et 4 Mo
De telles fonctions nécessitent une grande mémoire cache. L'Itanium en dispose de trois niveaux : les deux premiers, d'une capacité de 32 et 96 Ko, sont intégrés au processeur. S'y ajoute un troisième niveau, de 2 ou 4 Mo, externe et synchrone (cadencée à 733 et 800 MHz pour les premiers modèles). La communication avec la CPU se fait à 12,8 Go/s sur un bus d'une largeur de 128 bit. Par ailleurs, l'Itanium, gravé en 0,18 micron, est capable d'effectuer plus de six milliards d'opérations par seconde. Ses huit unités de calcul en virgule flottante le placent au niveau d'un processeur Sparc, réputé pour la réalisation de calcul complexes. Son bus système est cadencé à 266 MHz, pour des transferts à 2,1 Go/s entre la mémoire et le processeur.
Un doute subsiste sur la capacité de l'Itanium à exécuter les applications 32 bit. Intel promet une comptabilité totale avec la base installée de logiciels, grâce à un émulateur au niveau matériel faisant appel aux jeux d'instructions du Pentium, ne nécessitant aucune modification de code. Mais cette émulation risque de peser sur les performances du processeur, qui ne délivrera toute sa puissance que dans un environnement intégralement 64 bit.
