Téléchargez l'application
Tom's Hardware sur l'App Store
Toute l'actu informatique de référence sur votre iPhone
Oui Non

Architecture

par
Cet article constituant notre premier test d’Athlon 64, nous avons trouvé opportun de faire une brève introduction sur l’architecture K8 d’AMD.

L’Athlon restera incontestablement le plus gros succès de l’histoire d’AMD, tant d’un point de vue commercial que d’un point de vue technique. Depuis 1999 AMD n’a eu de cesse de raffiner son architecture K7 afin d’en tirer les meilleurs performances possibles. Ainsi les générations d’Athlon qui se sont succédées ont vu l’ajout d’un cache L2 on die (Thunderbird), l’ajout des instructions SSE et divers raffinements (Palomino) ou encore le passage à un cache L2 de 512Ko (Barton). Dans le même temps le bus EV6 voyait sa fréquence passer de 100MHz (DDR) à 200MHz son maximum théorique. Arrivé à ce stade il est rapidement apparu que l’architecture K7 était en bout de course et qu’il était temps d’opérer des changements plus significatifs. L’architecture K8 ou Hammer, puisque tel était le nom de code officiel de cette génération de processeurs, a donc été conçue dans cet optique. Mais pas question d’abandonner totalement l’architecture du processeur vedette de la firme. AMD a donc bâti sa nouvelle génération de processeurs en se basant largement sur l’Athlon. Toutefois pour justifier le changement de génération AMD a opéré à un changement majeur de l’ISA x86 en lui ajoutant un mode 64 bits

Comme Intel l’avait fait avec le 386 en passant les registres de 16 à 32 bits AMD a donc étendu les GPR de 32 à 64 bits. Mais contrairement à Intel, AMD ne s’est pas arrêté là, et en a aussi profité pour résoudre un des principaux problème de l’architecture x86 : le nombre de GPR a enfin été augmenté.


Jusqu’à présent toutes les architectures x86 ne présentaient que 8 registres au programmeur. Pourquoi « présentaient » ? Tout simplement parce qu’en fait ils en possédaient bien plus en interne, c’est ce que l’on appelle les registres de renommage. Ainsi les microprocesseurs modernes disposent de nombreux registres physiques mais ceux-ci sont principalement utilisés pour résoudre les fausses dépendances introduites par l’exécution des instructions dans le désordre. Ils ne sont pas visibles par le programmeur (ou le compilateur vu qu’aujourd’hui rares sont les personnes à encore écrire du code assembleur) et par conséquent ne peuvent pas être utilisés directement pour améliorer les performances du code. Leur utilisation est à la charge de l’unité de renommage, qui doit dynamiquement en faire le meilleur usage possible. La présence de nombreux registres logiques, directement visibles par le compilateur, est donc toujours nécessaire pour obtenir les meilleures performances en permettant des optimisations statiques. Sans compter que plus de registres signifie aussi moins d’instruction de chargement/rangement et donc moins d’accès mémoire. Et ça, AMD l’a bien compris en dotant son architecture de 8 registres supplémentaires. Ainsi de 8 registres généraux on passe ainsi à 16 dans l’ISA AMD64 ce qui est appréciable, même si les processeurs RISC disposent quasiment tous de 32 GPR. Evidemment ces registres supplémentaires ne sont accessibles que pour les nouveaux programmes tirant parti de l’ISA AMD64, le reste du temps seuls les 8GPR traditionnels sont visibles.

Dans sa grande opération de remise à niveau de l’ISA x86, dés le début du projet Hammer AMD n’a pas oublié de considérer le plus gros point faible comparé aux architectures RISC : la FPU. Cette unité responsable du calcul flottant est restée malgré tous les efforts des ingénieurs d’Intel ou d’AMD inférieure à celle des meilleurs processeurs RISC. Si l’Athlon, avec sa FPU superscalaire, n’a pu rétablir l’équilibre il était clair que continuer ainsi était un gâchis : la limite venait de l’architecture de la FPU. Cette architecture était en fait constituée de 8 registres organisés en pseudo pile. Seul un opérande par instruction était fourni, l’autre était automatiquement le registre situé au sommet de la pile. Pour résoudre ce problème AMD avait initialement choisi de créer une extension au jeu d’instructions appelé Technical Floating Point (TFP). Son but était de ramener les performances FPU de son processeur au niveau de celle des meilleurs processeurs RISC. Pour cela AMD avait abandonné l’architecture à pile hybride du x87 totalement dépassée, et voulait implémenter une FPU disposant d’un ensemble « à plat » de nombreux registres.

Finalement cette extension ne verra jamais le jour. Pourquoi ? Tout simplement parce qu’AMD s’est rendu compte qu’il y avait bien mieux à faire. Quand on regarde les extensions précédentes comme le MMX, le 3DNow! ou le SSE on se rend compte qu’il a fallut un certain temps pour qu’elles soient adoptés, en fait le temps qu’elles soient inclus dans les derniers compilateurs. Alors plutôt qu’ajouter une extension qui allait encore demander aux développeurs de compilateur d’écrire un nouveau back end pour les supporter, AMD a décidé de profiter des efforts d’Intel en matière d’évangélisation : ils ont donc inclus les instructions SSE2 qui remplissaient strictement la même fonction que l’extension TFP prévue initialement. Ainsi AMD pourra bénéficier instantanément de toutes les applications optimisées pour le SSE2 et du travail d’Intel pour réaliser un compilateur performant en tirant parti. Afin d’obtenir d’encore meilleures performances AMD a même poussé le vice jusqu’à doubler le nombre de registres par rapport à l’implémentation d’Intel, offrant ainsi 16 registres flottants doubles précision.

Les autres améliorations apportées au noyau d’exécution sont assez minimes : le pipeline a été légèrement allongé, augmentant de 2 étages par rapport à l’Athlon, ce qui devrait permettre de monter un peu plus facilement en fréquence. Mais contrairement à Intel qui a introduit des étages dans le pipeline de son architecture NetBurst uniquement dans ce but, les deux nouveaux étages du pipeline de l’architecture Hammer ont un véritable intérêt : en analysant les interdépendances entre les instructions juste après le décodage, ils permettent d’améliorer l’IPC, pourtant déjà excellent par rapport à l’Athlon.

Certains tampons ont également vu leur taille légèrement augmenter, et la prédiction de branchement a été perfectionnée grâce à une table d’historique des branchements plus conséquente (16K entrées au lieu de 4K) ainsi que l’amélioration de l’algorithme. Mais la plupart des grosses évolutions ont porté sur le sous système mémoire. Le cache L2 tout d’abord, qui a vu sa taille passer de 256/512Ko sur les Athlon XP selon les modèles à 512Ko/1Mo sur les Athlon 64. Mais ce n’est pas la seule amélioration du cache L2, bien qu’AMD n’ait pas été très bavard sur le sujet. La plupart des tests semblent indiquer deux choses : une bande passante plus élevée par rapport à celle de l’Athlon XP, et une latence plus faible. Impossible en revanche de savoir si cela vient d’un bus vers le cache L2 passé à 128 bits ou si l’interface 64 bits a été remaniée pour obtenir de meilleures performances.

Les tampons de traduction anticipée (Translation Look-aside buffer), qui sont des petites zones mémoires permettant d’accélérer les traductions entre adresses virtuelles et adresses physiques, ont vu leur taille grandement augmentée (de 24 à 40 entrées pour le TLB situé en L1 et de 256 à 512 entrées pour le TLB situé en L2).


Mais le plus gros ajout vient une fois de plus de l’Alpha et plus précisément du 21364 et consiste en l’intégration d’un contrôleur mémoire directement sur le die du processeur.

Traditionnellement ce contrôleur mémoire se situe dans le Northbridge du chipset, et en l’intégrant directement au niveau du CPU, ce contrôleur mémoire offre une meilleure bande passante disponible pour le processeur et permet surtout de diminuer énormément la latence d’accès à la mémoire principale. Les tests confirment la théorie, montrant qu’à fréquence égale la latence mémoire est 40% plus faible sur un Athlon 64 que sur un Athlon XP. Autrement dit le processeur perd nettement moins de cycle à attendre les données lors d’un accès mémoire. Les inconvénients de cette technique sont évidents : pour suivre les évolutions du marché de la mémoire il faut tout simplement changer de processeur en espérant qu’AMD soit suffisamment réactif pour mettre à jour le contrôleur mémoire. Mais il faut garder à l’esprit que la chaîne de développement d’un processeur est nettement plus longue que celle d’un chipset. On le voit cette décision prête à la controverse mais AMD a malgré tout jugé que l’apport offert contrebalançait les inconvénients.

Pour plus d’informations sur les CPU 64 bits, nous vous renvoyons à cet article sur l'émergence du 64 bits.

Partager:
39
Commentaires
X
Valider

Commentaires
Lire les commentaires sur le forum
NiahBoumPof is back 19/10/2004 10:57
Masquer
-0+

voyons voir les derniers bazar dans la classification PR de amd
les ecarts de PR entre S754 et 939:
pour 1,8Ghz on a du 2800 d'un coté et 3000 de l'autre: 200 d'ecart
pour 2Ghz: 200
pour 2,2Ghz on passe a 300
pour 2,4Ghz on passe meme a 400
puis pour le 2,4Ghz 1Mo on revient a 300

joce 19/10/2004 11:42
Masquer
-0+

NiahBoumPof is back a écrit :

voyons voir les derniers bazar dans la classification PR de amd
les ecarts de PR entre S754 et 939:
pour 1,8Ghz on a du 2800 d'un coté et 3000 de l'autre: 200 d'ecart
pour 2Ghz: 200
pour 2,2Ghz on passe a 300
pour 2,4Ghz on passe meme a 400
puis pour le 2,4Ghz 1Mo on revient a 300


oui mais y a pas que la frequence a prendre en question :o
mets les ecarts en prenant en compte le s754 ou s939 (bp memoire doublee)

NiahBoumPof is back 19/10/2004 12:07
Masquer
-0+

joce a écrit :

oui mais y a pas que la frequence a prendre en question :o
mets les ecarts en prenant en compte le s754 ou s939 (bp memoire doublee)



certes mais on va quand meme de +200 a +400, la BP n'explique pas tout la quand meme :/

joce 19/10/2004 12:09
Masquer
-0+

NiahBoumPof is back a écrit :

certes mais on va quand meme de +200 a +400, la BP n'explique pas tout la quand meme :/


oui c'est clair, mais ca depend pas mal de l'application, sur des jeux bien gourmand en memoire par exemple a mon avis ca doit se voir :o

NiahBoumPof is back 19/10/2004 12:11
Masquer
-0+

et ben a lire le test, a part dans les benchs, l'ecart de performance est tres faible :/

NiahBoumPof is back 19/10/2004 12:13
Masquer
-0+

en fait amd aurait due faire un choix, il est indeniable qu'avec le temps l'ecart va se sentir mais d'apres moi amd aurait donc due faire un choix: en impraire le socket754 ou le 939 et en paire l'autre.
Ex: si le 3400 est socket754 alors le 3500 est 939
parce que la on en arrive quand meme a du passage de 3400 a 3700 sur socket 754 en gagnant 200Mhz et a un passage de 3500 a 3800 sur socket 939 :/

joce 19/10/2004 12:29
Masquer
-0+

NiahBoumPof is back a écrit :

et ben a lire le test, a part dans les benchs, l'ecart de performance est tres faible :/


l'utilisateur lambda il voit pas les benchs de toute facon :o

NiahBoumPof is back 19/10/2004 12:30
Masquer
-0+

[:lol2]

Latem-oen 19/10/2004 12:34
Masquer
-0+

Heu je suis peut-être con mais j'ai un peu de la peine avec le calcul des pourcentages, dans les jeux en tous cas....

bidoulou 19/10/2004 13:37
Masquer
-0+

joce a écrit :

l'utilisateur lambda il voit pas les benchs de toute facon :o




Tu t'ais fait aranaqué et pis c'est tout :o

Puis en lisant le test, je confirme [:lol2]

drouvre 19/10/2004 15:13
Masquer
-0+

ENFIN ! :love:

PPC s'est payé un VRAI TEST CPU :love:

On est arrivé au niveau des tops sites :love:

drouvre 19/10/2004 15:18
Masquer
-0+

Si je peux me permettre :

Le test sur SOLIDWORKS : Enfin, on donne aux professionnels des comparatifs sur les applications qu'ils utilisent tous les jours --> [g]ce genre de test on en veut +++++ ![/g] parceque des 3Dmark + encore un truc 3D + 5 tests d'encodages, bof, quoi :/

Les tests sur des logiciels scientifiques et techniques : OUI ! :jap:
Les tests bidons, non [:spamafote]

le rollover sur les tableau --> :/


Sinon, c'est magnifique

drakue 19/10/2004 18:03
Masquer
-0+

tout a fait d'accord avec drouve félicitation pour ce test test complet et pro

mais je trouve que des application essentielle manque concernant le rendu 3d, Mentalray le meilleur moteur de rendu de loin au monde n'est jamais tester il a était pourtant inclus dans tous les plus grand soft (softimage,maya,3dsmax) et utilisait par tout les pro surtout quand on voit comment les résultats change selon le logicielle c'est bien dommage en espérant que vous allez l'inclure

(si c'est celui utilisez pour maya 6 autant pour moi même si c'est sur maya qu'il est le plus mal intégrer le displacement à l'air de qualité)

une autre petite suggestion de moindre interet je pense que le xvid a plus ça place dans la section encodage que le wm9 beaucoup moins rependu pour l'instant

merci encore pour ce fameux test

NiahBoumPof is back 19/10/2004 19:18
Masquer
-0+

drouvre a écrit :

ENFIN ! :love:

PPC s'est payé un VRAI TEST CPU :love:

On est arrivé au niveau des tops sites :love:



un vrai test cpu oui
mais ce dont je ne suis pas sur c'est de l'interet de ce test: comparer les processeur d'une meme gamme tu peux m'expliquer l'interet ???

ultrabill 19/10/2004 19:22
Masquer
-0+

NiahBoumPof is back > peut-être de montrer que suivant le socket utilisé, à fréquence égale, l'un est plus performant que l'autre [:spamafote]

NiahBoumPof is back 19/10/2004 19:25
Masquer
-0+

y'en a plein des tests sur le sujet
d'ailleurs a ce moment la si le test servait a cela il faudrait reprendre le tableau mit en 2e page du test recapitulant tous sur les procos et rajouter une ligne: PR reel.

Personnellement je trouve que amd a largement exageré avec son +300 (en moyenne hein car ca fait aussi du +200 et +400) pour le 939, m'est avis qu'un +100 aurait suffit

ultrabill 19/10/2004 19:48
Masquer
-0+

AMD voulait sûrement être le premier à afficher "4000" [:ddr555]

NiahBoumPof is back 19/10/2004 20:11
Masquer
-0+

alors que finallement c'est juste un 3600
edit: 3700 [:maitre capello]

drouvre 19/10/2004 21:09
Masquer
-0+

edit: 3800 :D
edit: 3900 [:matleflou]
edit (en XP Barton): 3253+ [:rofl]

XLOM 19/10/2004 21:49
Masquer
-0+

Conso électrique du 3500+ 90 nm :

http://www.anandtech.com/cpuchipse [...] =2249&p=13

bidoulou 19/10/2004 22:18
Masquer
-0+

C'est plutôt sympathique :D

voir impressionnant en load :love:

drouvre 19/10/2004 22:19
Masquer
-0+

ouais

XLOM 19/10/2004 23:07
Masquer
-0+

Les plaques SOI utilisées par IBM et AMD sont fabriquées par SOITEC (France) :

"Soitec ramps 300-mm wafer production, ponders next fab"

"He cited several designs already implemented on Soitec 300-mm wafers and moving toward high-volume production as driving the expansion. Among them are an IBM Microelectronics CPU, an AMD CPU family and the main chip for the Playstation-3 game box. The box is being jointly developed by Sony and Toshiba"
http://www.eetimes.com/semi/news/s [...] d=50500786

NiahBoumPof is back 20/10/2004 10:49
Masquer
-0+

XLOM a écrit :

Conso électrique du 3500+ 90 nm :

http://www.anandtech.com/cpuchipse [...] =2249&p=13



y'a tellement de truc contradicvtoire a ce sujet que personnellement je refuse desormais de croire n'importe quel article sur le sujet

drouvre 20/10/2004 13:28
Masquer
-0+

+1

NiahBoumPof is back 20/10/2004 19:27
Masquer
-0+

et en meme temps j'en ais rab [:djoce]

drouvre 21/10/2004 10:26
Masquer
-0+

pareil :D

LoneStar 22/10/2004 12:13
Masquer
-0+

un petit relevé de temperature en + aurait ete sympa

Gssik 24/10/2004 14:07
Masquer
-0+

Citation :Or le Socket 754 est également plus souple d’utilisation, ne nécessitant qu’une seule barrette mémoire pour démarrer et ne forçant pas un timing 2T, assez désastreux sur la bande passante mémoire, lors de l’utilisation de 4 barrettes en DDR400.


Puis je avoir une explication sur ceci SVP?

NiahBoumPof is back 24/10/2004 16:41
Masquer
-0+

apparement le dual DDR du socket939 ajouterais un nouveau timming qui sera a 2 au lieu de 1 d'apres ce que je crois vaguement comprendre :/
drouvre t'es la ?

Les offres du moment

Newsletters


OK