Catégories:

Advanced Digital Media Boost

Fedy Abi-Chahla
Lundi 10 juillet 2006 à 00:00 par Fedy Abi-Chahla

Catégories: Processeur


Advanced Digital Media Boost

Pendant longtemps la gestion des instructions SIMD a été particulièrement négligée sur les processeurs x86. Dès l’introduction du MMX les faiblesses de l’implémentation d’Intel du calcul vectoriel ont été flagrantes. En premier lieu les 57 nouvelles instructions ne concernaient que le calcul entier. La deuxième limitation est liée à la volonté d’Intel de limiter les modifications à apporter à l’architecture x86. Ainsi pour éviter d’introduire un nouvel état à son processeur, Intel a du réutiliser les 8 registres flottants x87 comme sources des opérations SIMD.

Cette décision a eu plusieurs conséquences néfastes pour les performances, la première c’est qu’il est particulièrement pénalisant de mixer des instructions MMX et des instructions flottantes au sein d’une même routine. Pour des performances optimales les programmeurs devaient donc se montrer particulièrement attentifs à séparer clairement le code utilisant les instructions MMX du code utilisant les instructions flottantes, sous peine de perdre beaucoup trop de cycles à sauvegarder les registres et à changer de mode. Le deuxième problème vient de la taille des registres, les registres flottants étant limités à 80 bits, les vecteurs ne pouvaient excéder une taille de 64 bits.


Avec le SSE Intel s’est affranchi de ces limitations en introduisant 8 nouveaux registres 128 bits, on pouvait donc enfin espérer voir un jeu d’instructions SIMD parfait sur processeur x86 mais encore une fois Intel n’a pas été au bout de ses ambitions et s’est contenté d’une solution intermédiaire afin de ne pas augmenter de façon trop substantielle le nombre de transistors.

Si Intel dispose cette fois de vecteurs 128 bits, les bus de données internes du CPU n’étaient conçus que pour faire transiter au maximum 80 bits de données à la fois (la taille des registres x87). Pour contourner cette limitation sans élargir ces bus, Intel a décidé de décomposer les instructions opérant sur des registres 128 bits en deux micro-opérations opérant sur des registres 64 bits, chacune étant exécutée séquentiellement. La conséquence immédiate c’est que le débit des instructions SSE est de une tous les deux cycles. Heureusement Intel a implémenté deux unités SSE sur ses Pentium III : une pour les additions et l’autre pour les multiplications, ces deux unités pouvant opérer en parallèle.

Par conséquent les Pentium III et 4 étaient capables d’exécuter 4 opérations flottantes simple précision par cycle mais uniquement dans le cas idéal où le code était constitué d’une alternance d’additions et de multiplications. Une séquence constituée uniquement d’additions ou de multiplications voyait ses performances divisées par deux par rapport à ce cas idéal. Un autre problème du SSE à son introduction était lié au fait que seul un décodeur sur les trois que comptait un Pentium III était capable de décoder les instructions SSE, ce problème a toutefois été corrigé sur le Yonah.


Annonces Google
Commentaires

christophe_d13 10/07/2006 11:22
Masquer
-0+
christophe_d13
:jap:
overclock3 10/07/2006 12:21
Masquer
-0+
overclock3
Bonjour,

L'article est très intéressant.

Lorsque vous effectuerez des tests pratiques, serait-il possible d'avoir des comparatifs entre processeurs AMD socket 939 et Core 2 Duo sur les jeux, en 1280x1024 et 1600x1200, filtrages activés ?

En effet, touts les tests sur les autres sites se focalisent sur des tests en 640x480 ou 800x600, ce qui est d'un intérêt nul pour les joueurs.

Je comprends qu'il est facile de tirer des conclusions lorsque la résolution est basse car la carte graphique n'est plus le facteur limitant mais pour la population de joueurs, 1280x1024 ou 1600x1200 sont les résolutions les plus utilisées.

Vu l'absence de tests de ce type, il est certain qu'un article de ce type serait fortement consulté par la population de joueurs.
Florian c 10/07/2006 12:23
Masquer
-0+
Florian c
Pour information depuis le début des tests de processeurs sur PPC, on test les jeux en hautes résolution (cf http://www.presence-pc.com/tests/Processeurs-6.html ). :o
SteffffDotCom 10/07/2006 16:26
Masquer
-0+
SteffffDotCom
baxter01570 a écrit :

Lorsque vous effectuerez des tests pratiques, serait-il possible d'avoir des comparatifs entre processeurs AMD socket 939 et Core 2 Duo sur les jeux, en 1280x1024 et 1600x1200, filtrages activés ?

En effet, touts les tests sur les autres sites se focalisent sur des tests en 640x480 ou 800x600, ce qui est d'un intérêt nul pour les joueurs.

Je comprends qu'il est facile de tirer des conclusions lorsque la résolution est basse car la carte graphique n'est plus le facteur limitant mais pour la population de joueurs, 1280x1024 ou 1600x1200 sont les résolutions les plus utilisées.




Facteur limitant ? Ca me semble logique le 640x480 : toutes les cartes arrivant à suivre tu peut vraiment comparer la machine, donc le proc. En 1600x1200 tu regardes la carte graphique ET le processeur... Pas évident d'y voir clair à ce moment là.
Florian c 10/07/2006 16:29
Masquer
-0+
Florian c
Certes mais la présence de ces 2 résolutions permet d'avoir une meilleure visibilité de la chose et de répondre à la fameuse question "Est-ce que le passage à ce processeur me ferra gagner quoi que ce soit dans les jeux en pratique ?"... :o
mixeur 10/07/2006 21:07
Masquer
-0+
mixeur
Excellent article, mais très technique.
Je doute que le quart des lecteurs ne comprennent tout, mais bon, faut ce qu'il faut...
drouvre 10/07/2006 22:18
Masquer
-0+
drouvre
J'ai tout lu et c'est vraiment bien ! Zeross t'es vraiment un chef :love:
darkboz 11/07/2006 07:17
Masquer
-0+
darkboz
Excellent article, très technique, bien rédigé, qui montre enfin au détracteur du P-M = un PIII survitaminé, ce qui dans le fond n'est pas faux mais la c'est plutot du niveau d'une refonte que d'un boost ce qui montre quand même l'expertise d'intel dans le domaine de l'architechture CPU, sublime quoi :love:. Sinon pour testé un proc dans les jeux c'est tout à fait pertinent de le faire à très basse résolution car la carte graphique n'entre quasiement pas en ligne de compte dans le calcul, on obtient vraiment la force brute du processeur. De toute maniere si on prend deux tests CPU et CG et qu'on tape dans les meilleurs de chaque on ne peut obtenir qu'une configuration très performante. Encore bravo pour cet excellent article !
christophe_d13 11/07/2006 10:49
Masquer
-0+
christophe_d13
Florian c> S'il y a des tests en socket 939, ce serait possible d'incorporer de la DDR-600 en plus de la DDR-400 ?
Oui je suis casse-pied... C'est bon, je retourne au bal !
manket 12/07/2006 11:29
Masquer
-0+
manket
Intérréssant on va bientôt pouvoir changer son ordinateur :pt1cable:
Mais pour acheter un conroe faut la carte mère qui va avec, et la malheureusement je n'en voit pas beaucoup de compatible à part la ASUS a 249 euros .... cher quand même surtout qu'elle est plein de gadget qui me servent à rien...
Y a t il un test de prévu? Et surtout quand les cartes sortiront elles? car sans elles mon E6600 sert à rien , enfin mon futur :sol:
Florian c 12/07/2006 11:37
Masquer
-0+
Florian c
Work In Progress... ;)
mixeur 12/07/2006 21:36
Masquer
-0+
mixeur
La NDA prend fin le 14/07. Le test sortira le 17/07 ?
Florian c 12/07/2006 21:46
Masquer
-0+
Florian c
Nous n'avons pas l'habitude d'être en retard par rapport au NDA non...
christophe_d13 13/07/2006 09:34
Masquer
-0+
christophe_d13
Florian c> J'imagine que l'article sera en ligne pour le 14/07 mais pas disponible : il n'y aura pas le lien.
Il ne restera qu'a déposer le lien le 15 ?
Mictateur 19/09/2006 14:10
Masquer
-0+
Mictateur
Commentaire du 19/09/06 avec la preview du Core 2 en homepage :
"Elle est fraîche ma news, toute fraîche !"


[:casimir59:5]
ThePike 20/09/2006 15:13
Masquer
-0+
ThePike
Intéressant l'article, de la technique ça fait plaisir :) Y'a même de l'assembleur, rhôôô, c'est bon ça! Tiens, au passage, le graphique 1 de la page 3, la commande en asm cmp (comparaison) devrait être avant jne (saut conditionnel), non? Bah je chipote, c'est vrai... :ange:
Gudule 21/09/2006 13:29
Masquer
-0+
Gudule
Il me semble qu'il est avant d'après le sens de la flêche.

A savoir Vous allez poster en tant qu'utilisateur anonyme.



Annonces Google