RAM «plus rapide» à vitesse d'horloge inférieure?

J'ai été très intéressé par la mécanique (er, électronique) des systèmes informatiques récemment et après un tas de recherches et en regardant les propriétés de mon ordinateur, j'ai rencontré quelque chose d'étrange.

La plupart des gens disent qu'une RAM plus rapide signifie, bien, une RAM plus rapide. Est-ce que c'est logique? Mais après avoir regardé mon ordinateur, j'ai remarqué que ma RAM installée était capable d'être synchronisée. Il fonctionne habituellement à 333 Mhz (DDR2 à 667) avec un timing 5-5-5-15. Cependant, l'un des programmes que j'utilise pour regarder dans mon PC dit qu'il est capable de travailler à 266 Mhz avec 4-4-4-12 timing et 200 Mhz avec 3-3-3-9 timing.

La chose est, selon mes calculs (simplement le numéro de synchronisation divisé par la fréquence d'horloge pour obtenir la latence en secondes), 200 Mhz au 3-3-3-9 temps a vraiment une meilleure latence que 333 Mhz à 5-5-5- 15 chronométrage.

Donc, ma question est la suivante: est-ce vrai que je peux effectivement améliorer les performances de mon système si un programme que je cours est en train d'accéder à la mémoire d'une manière vraiment aléatoire (par opposition aux lectures / écritures séquentielles) en sous l'horloge de la RAM et en sélectionnant Un timing plus serré ou ai-je commis une erreur quelque part?

Edit: Juste avant de commencer à argumenter que je me trompe sur la «vitesse» de RAM, permettez-moi de définir ce que je veux dire par «plus rapide». La RAM a la latence et la bande passante. Quand je dis «plus vite», je parle strictement de la latence et non de la bande passante. En lecture / écriture séquentielle, oui, la bande passante est beaucoup plus importante que la latence (la RAM fonctionne en mode rafale, ce qui permet d'atteindre la bande passante maximale en pompant des lignes séquentielles de données dans le cache de la CPU, même si la CPU n'a jamais demandé les choses supplémentaires). Cependant, dans l'accès aléatoire, la latence totalement exclue règle la bande passante.

En règle générale, vous gagnerez plus de bénéfices par des temps de synchronisation plus élevés par rapport à la moyenne de MHz et plus bas. Dans un cas général, même si vos délais CAS peuvent être augmentés de 5-5-5-15 du 4-4-4-12, par exemple, la vitesse d'horloge supplémentaire de 133 MHz générée permettra à la mémoire de passer ces cycles CAS En moins de temps, étant ainsi «plus rapide» en termes d'accès aléatoire.

Cependant, il semble que vous vous êtes tranchés sur un cas de bord où les temps de temps CAS inférieurs prennent moins de temps que les temps de CAS plus élevés, malgré la vitesse d'horloge inférieure. En théorie , je suppose qu'une charge de travail 100% aléatoire fonctionnerait mieux dans ce scénario si vos mathématiques fonctionnent. Mais, comme d'autres l'ont dit, il y a d'autres facteurs à prendre en considération (carte mère, etc.), ce qui ne s'appliquerait qu'à une charge de travail 100% aléatoire qui ne lit qu'un seul mot à la fois. Pour le cas que vous avez défini, la différence est marginale telle quelle. Tout en dehors de cette charge de travail aléatoire hypothétique aurait moins de performance que s'il fonctionnait avec les modules RAM à une vitesse d'horloge plus élevée.

Dans le monde réel, quand il y a un compromis, accédez aux MHz plus élevés (ou aux modules enregistrés, ou ce qui s'applique à votre besoin).

Donc, ma question est la suivante: est-ce vrai que je peux effectivement améliorer les performances de mon système si un programme que je cours est en train d'accéder à la mémoire d'une manière vraiment aléatoire (par opposition aux lectures / écritures séquentielles) en sous l'horloge de la RAM et en sélectionnant Un timing plus serré ou ai-je commis une erreur quelque part?

Il est difficile de répondre car il existe de nombreuses variables à considérer. En théorie, vous devriez pouvoir améliorer les performances de ces programmes. Cela suppose que la mémoire est très fragmentée ou que vous lisez / écrivez de petites quantités de données. Notez également que votre performance globale du système peut se dégrader. La meilleure chose à faire est de l'essayer, car il s'agit d'un test très simple, en supposant que votre BIOS donne accès à ces paramètres.

Vous pouvez utiliser l'indice de performance décrit ici: http://www.anandtech.com/show/7364/memory-scaling-on-haswell/10 Je ne suis pas sûr de savoir comment cela s'applique aux béliers à faible vitesse, mais dans votre cas:

333/5 = 66.6 266/4 = 66.5 200/3 = 66.7 

Donc, en théorie, peu importe les paramètres que vous choisissez.

Cela passe énormément par dessus http://www.pcstats.com/articleview.cfm?articleID=873