II – Contrôleur Mémoire
Comme nous l’avons vu plus haut, lorsque notre processeur ne trouve pas ce qu’il veut dans le cache ou dans les registres ou qu’il a pensé que dans quelques temps il aura besoin d’une information en particulier, il va devoir aller demander cela à la mémoire centrale, la fameuse RAM. Il en existe de plusieurs types, mais ce n’est pas là l’objet de cette partie. Je vais donc parler de celles-ci en général.
Cette fameuse mémoire ne va pas répondre au quart de tour, il lui faut un petit moment pour aller regarder au bon endroit, lire l’information, et aller la retourner. Cela prend quelques « temps mémoire ». Vous avez sans doute déjà entendu parler des CAS ? Ces fameux chiffres que nos vendeurs arborent… Et bien ceux-ci évaluent le temps nécessaire pour que la RAM réponde aux questions qu’on lui pose …
Vous avez pu constater que ce genre de mémoire était aussi relativement lente comparé à la fréquence des processeurs actuels. Il était une époque ou les processeur avaient la même fréquence que la RAM, mais cette époque est loin derrière nous … Un problème se pose alors, et celui-ci n’a pas de solutions miracles : le processeur ne peut avoir accès à la mémoire tout le temps, il ne peut demander a la mémoire ce qu’il veut quand il le veut, il va devoir attendre un nombre de « temps processeur » particulier (celui-ci est égal au fameux multiplicateur cher aux overclockers … mais ce n’est pas le sujet …)
Rentrons maintenant dans le vif du sujet : la façon dont les différentes architectures présentes ici travaillent avec cette RAM :
- Pour l’architecture Pentium 4, le contrôleur mémoire est intégré au chipset, c’est un composant annexe soudé sur la carte mère et qui est en gros celui qui contrôle celle-ci … Le processeur doit donc aller demander à ce chipset ce dont il a besoin et c’est lui qui va aller demander à la RAM.
- En ce qui concerne l’architecture K8, le contrôleur mémoire est directement intégré au processeur lui-même, l’Athlon64 demande donc sans intermédiaire ce qu’il veux à la mémoire, le chipset est toujours présent mais est seulement utilisé pour l’accès aux périphériques annexes tels lecteurs de disques ou cartes d’extensions, périphériques de saisie, etc.
Après avoir sommairement parlé de tout cela, parlons de ce qui en découle. Lorsque un P4 va avoir besoin d’une information, il va devoir d’abord formuler sa demande au chipset, le chipset va devoir comprendre cette demande et la reformuler pour que la RAM la comprenne. Et la réponse de la RAM doit refaire tout le chemin inverse en passant dans ces mêmes endroits… Sur un A64, le chemin est plus court, le processeur formule sa demande directement à la RAM sans intermédiaire.
Petite explication à l’aide d’un exemple :
J’appuie le fait que cet exemple est énormément simplifié pour que la plupart des gens puissent comprendre le phénomène. Il existe un véritable gouffre entre ce que je vais vous montrer et la réalité du terrain, je ne peut par une simple équation montrer ce qu’il se passe vraiment lorsque une requête mémoire est envoyée, trop de facteurs rentrent en jeu. Cependant ce petit calcul montre d’une façon simple le phénomène …
Supposons que nos deux processeur utilisent le même type de RAM qui a une latence de 4 temps mémoire en moyenne. Supposons que le P4 comme le A64 prennent l’équivalent de 2 temps mémoire pour écrire ou comprendre une requête. Supposons que le chipset ai lui aussi latence de 2 temps mémoire pour répondre aux requêtes.
Donc le temps moyen pour l’accès aux données sur nos deux plateforme sont :
- Pour le Pentium 4 :
2+2+4+2+2=12 temps mémoire
- Pour l‘Athlon 64 :
2+4+2=8 temps mémoire
Soit un gain de 33% en temps dans cette configuration, ce qui veut dire que pour aller chercher dans la RAM l’Athlon 64 est plus rapide que le Pentium 4 …
La prochaine fois, nous parlerons des processeurs Dual Core ainsi que de leurs particularités…
__________________
Hello IT ... Have you tried to turn it off and on again ? ... The button on the side, is it glowing ? ... Yeah you need to turn it on ! ... The button turns it on ? ... You DO know how a button works don't you ! ?
|