Accueil » Dossier » L’émergence du 64 bits » Page 5

L’émergence du 64 bits

1 : Introduction 2 : Le 64 bits qu’est ce que c’est ? 3 : Le 64 bits, quel intérêt ? 4 : Le 64 bits selon AMD 6 : AMD64 7 : AMD64 (suite) 8 : Le 64 bits selon IBM 9 : Le PowerPC 970 10 : Le PowerPC 970 (suite) 11 : Conclusion

Le 64 bits selon AMD (suite)

On vient de le voir, AMD avait choisi de jouer les « monsieur plus » avec son processeur Athlon, en offrant plus de décodeurs, plus d’unités de calcul et donc plus de parallélisme, intel pour sa part n’avait qu’une idée en tête pour sa septième génération de processeur : la fréquence. L’objectif du Willamette était d’atteindre un niveau de performances sans précédent, non pas en exécutant plus d’instructions simultanément mais en les exécutant plus vite grâce à une haute fréquence d’horloge. Pour cela intel n’a pas hésité à allonger le pipeline de façon démesurée. La première implémentation de sa nouvelle architecture n’était clairement pas enthousiasmante. Le Willamette offrait des performances plus que moyennes, et la fréquence qui aurait du être le point fort de l’architecture ne dépassait pas les 1.5GHz au lancement ce qui était insuffisant pour contrebalancer l’avantage architectural de l’Athlon qui atteignait les 1.2GHz à cette époque.


Depuis les choses ont changées : la différence de fréquence s’est accentuée avec un avantage d’environ 1GHz pour intel et l’architecture a été affinée permettant au Pentium 4 d’offrir des performances de haut niveau. Au lieu de concurrencer AMD sur le terrain du x87 intel a choisi de laisser derrière lui ce lourd héritage en offrant une FPU aux performances désastreuses clairement présente à titre de compatibilité. En échange intel a introduit un nouveau jeu d’instructions venant compléter le MMX et SSE : le SSE2. Contrairement à ses prédécesseurs le SSE2 n’était plus limité au calcul vectoriel simple précision mais offrait aussi un support pour le calcul scalaire double précision. Seul intel pouvait se permettre un tel changement mais grâce à son poids et à des efforts envers les développeurs (notamment un compilateur très performant) il est parvenu à imposer son choix.

Voici la situation du marché avant l’arrivée de la nouvelle génération de processeurs d’AMD. Après ce bilan on comprend mieux les problèmes qui se posaient aux ingénieurs : que fallait il ajouter pour tirer encore plus de performances de cet antique ISA ? L’Athlon avait choisi d’être encore plus superscalaire, le Pentium 4 d’être plus rapide laquelle de ces deux voies fallait il choisir ? A moins que la solution ne vienne d’une combinaison des deux ? Si cela semble en effet bien peu compliqué au premier abord : « il suffit de rajouter encore plus d’unités et d’allonger le pipeline et voilà ! » on s’aperçoit que dans la pratique ça ne marche pas comme ça. Entre en scène la loi des rendements décroissants. Que nous dit cette loi ? Et bien tout simplement que les ajouts successifs de ressources (mémoire, de calcul…) se traduisent par des retours de plus en plus faibles au niveau des performances, autrement dit les performances convergent vers une sorte d’asymptote. Pour quelle raison ? Et bien tout simplement parce qu’au bout d’un certain moment l’ordonnanceur ne parvient plus à extraire suffisamment de parallélisme du code pour occuper toutes les unités d’exécution. En conséquence ajouter encore plus d’unités d’exécution serait un gâchis de ressources car le gain resterait minime la plupart du temps.

Et voilà que se présente du coup le deuxième problème des ingénieurs : s’il n’est plus possible d’extraire plus de performance d’un ISA vieux de plus de vingt ans et qui n’était déjà pas considéré comme particulièrement élégant alors pourquoi ne pas en profiter pour l’abandonner au profit de quelque chose de plus moderne ? Après tout énormément de ressources des processeurs x86 récents sont simplement dédiés à contrebalancer des défauts de son architecture afin de lui permettre de rester compétitif. En tablant sur un nouveau jeu d’instruction ,débarrassé des défauts initiaux que les processeurs x86 traînent comme un boulet toujours plus lourd, il deviendrait possible d’atteindre un nouveau niveau de performances. C’est d’ailleurs le choix qu’a fait intel il y a plusieurs années en lançant le développement de son architecture IA64 résolument nouvelle. Oui mais voilà, imposer de nouvelles architectures même pour de grosses sociétés ayant énormément de poids dans le secteur reste particulièrement difficile. Alors qu’en 1991 tout le monde voyait MIPS imposer ses processeurs RISC supplantant ainsi les processeurs intel, ils ont aujourd’hui complètement disparus. En 1993 le PowerPC devait signer la mort de l’architecture intel, soutenu par des sociétés comme Apple, Motorola et IBM tout le monde voyait déjà le PowerPC s’imposer, aujourd’hui hormis dans les Macintosh et les consoles de jeu le PowerPC n’a pas réussi son pari. Et ne parlons pas du processeur Alpha de Digital qui malgré des performances largement supérieures à la concurrence n’a jamais réussi à s’imposer et a fini par se faire racheter par intel. Donc si de grosses sociétés avec beaucoup plus de moyens financiers se sont cassés les dents comment AMD pourrait espérer s’imposer ?

AMD est donc condamné à rester compatible avec l’ISA x86 tout en continuant à améliorer les performances. Le problème semble a priori insoluble…

Sommaire :

  1. Introduction
  2. Le 64 bits qu’est ce que c’est ?
  3. Le 64 bits, quel intérêt ?
  4. Le 64 bits selon AMD
  5. Le 64 bits selon AMD (suite)
  6. AMD64
  7. AMD64 (suite)
  8. Le 64 bits selon IBM
  9. Le PowerPC 970
  10. Le PowerPC 970 (suite)
  11. Conclusion