Dossier: impact de la mémoire sur les performances

17 août 2007 à 14h40
0
Dans n'importe quel ordinateur, l'élément déterminant sur le plan des performances est bien entendu le processeur. De son choix, découle celui de la carte mère et donc du chipset avec en revanche, d'un jeu de composants à l'autre, des petites variations de performances. Processeurs et cartes mère participent par ailleurs à déterminer le type de mémoire qui équipera votre ordinateur, ces trois éléments travaillant en symbiose. Dès lors, il est intéressant de connaître l'impact de la mémoire sur les performances globales pour éviter de brider le processeur en employant, par exemple, une mémoire trop lente.

En évolution constante depuis des années, la mémoire a connu une succession de standards, de la SIMM EDO à la SDRAM, en passant par la DDR et la Rambus, en admettant que cette dernière soit bien un standard, pour finalement en arriver à la DDR2, le standard massivement utilisé aujourd'hui. Si la DDR2 est à l'heure actuelle la mémoire la plus répandue, ses débuts ont été plus que périlleux alors que se profile déjà à l'horizon la relève avec la DDR3, introduite tout récemment par Intel avec sa plate-forme Bearlake (alias P35). Mais quels sont les paramètres les plus importants dans le choix de la mémoire qui devra équiper votre PC ? La RAM hors de prix a-t-elle un intérêt ? Faut-il plutôt privilégier la capacité, la fréquence ou les temps de latence agressifs ? Autant de questions auxquelles nous allons tenter de répondre.

0000010400426162-photo-hynix-barrettes-1-go-et-2-go-grav-es-en-60-nm.jpg

De l'importance de la mémoire dans les performances système

0000009600044519-photo-photo-rambus.jpg
Nous l'évoquions dès l'introduction, la mémoire travaille, et ce, quelque soit son type, en tandem avec le processeur. Pour effectuer ses calculs, ce dernier a en effet besoin d'être alimenté en données, des données qui proviennent justement de la mémoire vive du système. C'est pourquoi, plus la quantité de données échangée entre le processeur et la mémoire est importante, plus le processeur se montre efficace dans ses traitements : c'est ce qu'on appelle la bande passante. Pour augmenter la bande passante, il existe différentes stratégies. La première et la plus facile est bien sûr d'augmenter la fréquence de fonctionnement des puces mémoires, ce qui se fait à chaque évolution des standards ou presque.

00054426-photo-nvidia-dualddr.jpg
Une autre solution, adoptée depuis plusieurs années déjà, est d'utiliser deux contrôleurs mémoire en parallèle afin de doubler la bande passante effective, ce qui oblige à installer les barrettes mémoires par paires. C'est pour la petite histoire ce qu'Intel proposait dès les premières heures du Pentium 4 avec son chipset i850 et la mémoire Rambus, un concept depuis repris par NVIDIA avec son premier nForce et largement popularisé par la suite.

À la notion de bande passante, s'ajoute la notion de temps de latence. Ici il est question du temps nécessaire à la barrette pour envoyer au processeur les données demandées par le contrôleur mémoire. Le temps de latence s'exprime en nombre de cycles d'horloge, il est généralement noté CAS et il s'agit du premier des quatre chiffres décrivant habituellement les différents temps de latence d'une barrette mémoire. En principe donc, plus le temps de latence est bas, plus le processeur peut récupérer rapidement une information depuis la mémoire ce qui se ressent sur sa rapidité globale de traitement. Reste que les choix technologiques effectués par le JEDEC, du nom de l'organisme en charge de la standardisation des normes mémoires, favorisent principalement depuis la DDR2 la fréquence de fonctionnement et donc la bande passante, aux temps de latence.

000000A000489230-photo-samsung-ddr2-through-silicon-via-tsv.jpg

Mais pourquoi un tel choix ? Première raison, l'augmentation des fréquences de fonctionnement pallie en général à la détérioration des temps de latence. Ainsi, une mémoire en DDR2-800 certifiée en 4-4-12 affichera des performances identiques voire supérieures à une mémoire en DDR2-667 en 3-3-2-8. L'autre raison est à chercher dans la nature même des données habituellement traitées puisqu'avec l'explosion du multimédia les Processeurs ont vu leur charge de travail évoluer, ceux-ci traitant de plus en plus fréquemment de larges quantités de données. Enfin, il est techniquement bien plus facile d'augmenter la fréquence d'une puce que d'améliorer ses temps de latence.

Considérations sur la problématique de la quantité mémoire

0000008C00565379-photo-a-propos-de-ce-mac.jpg
Aux problématiques de fréquence et de temps de latence, s'ajoute bien sûr la question de la quantité de mémoire. Une question qui semble pour beaucoup d'acheteurs primordiale alors qu'elle ne l'est finalement pas tant que ça. Du moins pas au point de privilégier l'achat d'une machine avec 2 Go de mémoire vive dont le processeur est notoirement plus lent que celui qui équipe une autre machine avec cette fois seulement 1 Go de mémoire. Naturellement, si la machine ne dispose pas assez de mémoire, elle risque d'être gravement ralentie, le système d'exploitation ayant alors massivement recours au disque dur pour stocker les données dont il a besoin, un procédé que l'on appelle le Swap et qui existe au bas mot depuis Windows 3.1. Bien plus lent que la mémoire, le recours au disque dur est donc, dans le cas des systèmes avec peu de mémoire, pire que le mal.

En revanche, au-delà d'une certaine quantité critique de mémoire, le bon vieil adage populaire « Le trop c'est comme le pas assez » se vérifie à nouveau. Prenez une machine avec 2 Go de mémoire vive : le passage de 2 à 4 Go ne va pas franchement se ressentir sur les performances quotidiennes à moins d'avoir un usage très spécifique du système, ce que nous vérifierons un peu plus loin. Soulignons au passage que la plateforme matérielle 32 bits limite de facto la quantité physique maximale de mémoire à 4 Go.

Combien de RAM pour Windows ?

Généralement, on considère qu'il faut au minimum 512 Mo de mémoire vive sous Windows XP, une quantité qui passe à 1 Go pour un usage véritablement confortable surtout avec le Service Pack 2. Avec Windows Vista, le petit dernier de Microsoft, le gigaoctet de mémoire fait figure de minimum syndical alors que la présence de 2 Go permet d'utiliser le système de manière là encore confortable.

Windows et le mythe des 3 Go....

Et si vous décidez d'aller plus loin en dotant votre machine préférée de 3 ou 4 Go de mémoire physique, le système d'exploitation, en l'occurrence Windows n'en tirera pas nécessairement profit. Il faut en effet savoir que l'édition 32 bits de Windows, ne peut pas allouer plus de 2 Go de mémoire vive à une seule application 32 bits et ce même si vous disposez de 3 Go de mémoire (ou plus). Attention, il existe malgré tout un paramètre permettant de faire passer cette limitation de 2 à 3 Go, mais celui-ci n'est pas activé par défaut.

000000C300564417-photo-dossier-m-moire-windows-xp-sp2-4-go-amd.jpg
000000C300564953-photo-dossier-m-moire-cpu-z-2-75go-sous-xp-sp2.jpg

4 Go ou ce qu'il en reste sous Windows XP Professionnel Service Pack 2 édition 32 bits

Qui plus est, avec 4 Go de mémoire physique, Windows XP 32 bits sait certes les adresser dans leur intégralité mais au final seuls 2,75 à 3,5 Go de mémoire sont effectivement utilisables, et ce, de par la conception même de l'architecture mémoire x86. Notez au passage que la quantité exacte de mémoire remontée par Windows XP varie en fonction du chipset et du BIOS de la carte mère. Cette différence entre la quantité de mémoire physique installée et la quantité disponible sous Windows s'explique par la présence d'une zone haute dans la mémoire vive. Située juste en-dessous des 4 Go, où sont stockées les adresses mémoire utilisées par les divers périphériques d'extension PCI, une spécificité imposée par l'architecture x86. Dès lors, la mémoire vidéo embarquée par les Cartes Graphiques vient amputer, en partie, la quantité totale de mémoire accessible.

000000B400566611-photo-windows-vista-x86-4-go.jpg
000000B400566853-photo-dossier-m-moire-windows-vista-x64-4-go.jpg

4 Go sous Windows Vista : à gauche version 32 bits, à droite version 64 bits


À noter que depuis le Pentium Pro, Intel propose avec tous ses Processeurs 32 bits une extension baptisée PAE pour Physical Adress Extension qui permet d'adresser la mémoire non plus sur 32 bits mais sur 36 bits, ce qui relève logiquement les limites énumérées précédemment. Seulement voilà, si le Service Pack 2 de Windows gère cette spécificité, le système, même dans sa version professionnelle ne sait gérer que 4 Go de mémoire au maximum, aussi et même lorsque le paramètre PAE est actif, la quantité de mémoire disponible sous Windows est toujours inférieure à 4 Go. Même chose avec l'édition 32 bits de Windows Vista.

02BC000000565298-photo-dossier-m-moire-adressage-m-moire-x86.jpg

Adressage mémoire sur les architectures x86

Naturellement avec un système d'exploitation 64 bits, comme Windows XP 64 ou encore Windows Vista x64, la limitation physique des 4 Go n'est plus d'actualité et si votre système dispose pile de 4 Go de mémoire, l'intégralité de cet espace est alors utilisable sans concession (sous réserve toutefois d'activer le remappage mémoire dans le BIOS). Pour la petite histoire, un système d'exploitation 64 bits comme Windows Vista peut gérer de manière dynamique jusqu'à 128 Go de mémoire vive : de quoi voir venir !

Quid de la quantité mémoire pour les autres systèmes d'exploitation ?

0000009100565301-photo-bureau-mac-os-x.jpg
Aussi répandu soit Windows, le système de Microsoft n'est pas seul au monde et il nous faut également considérer Mac OS X, le système d'exploitation qui équipe toutes les machines . Par le passé particulièrement radin sur la dotation en mémoire de ses ordinateurs, Apple a fait récemment quelques modestes efforts, la plupart des Mac étant équipés de 1 Go de mémoire en standard. Pourtant, Mac OS X est notoirement gourmand en la matière et le simple fait d'augmenter la quantité de mémoire se ressent plus que significativement sur ses performances. A l'instar de Windows XP, Mac OS X réclame un minimum de 1 Go de mémoire vive pour fonctionner confortablement. Il est certes possible de faire fonctionner Mac OS X avec 512 Mo, mais les performances en pâtiront de manière significative.

Du côté de Linux, la quantité de mémoire nécessaire pour un fonctionnement en souplesse varie non pas tant en fonction de la distribution utilisée mais surtout en fonction de l'interface graphique retenue. Certaines distributions utilisent par défaut KDE alors que d'autres ont recours à Gnome, des environnements qui ont des exigences assez proches du monde Windows ou du monde Mac en matière de mémoire. Ainsi s'il est tout à fait possible de faire fonctionner une distribution Linux avec l'interface KDE et 512 Mo de mémoire vive, le système sera limité et il ne sera pas possible par exemple d'ouvrir plus d'une vingtaine de fenêtres en simultané. Du coup, pour une utilisation confortable avec les interfaces graphiques KDE ou Gnome, un minimum de 1 Go de mémoire vive est requis pour un fonctionnement convenable. D'autres interfaces plus légères existent comme XFCE qui permet une utilisation à partir de 256 Mo de mémoire vive mais sachant que Firefox a lui seul peut utiliser plus de 200 Mo de mémoire vive, est-ce un choix bien judicieux ?

0000010400567239-photo-dossier-m-moire-bureau-linux-fedora.jpg
00310184-photo-ordinateur-de-bureau-dell-dimension-3100c.jpg
Avant de nous pencher sur l'influence des temps de latence de la mémoire sur les performances système, nous commençons par évaluer l'influence de la quantité de mémoire sur les dites performances. Pour cela, nous retenons deux configurations matérielles différentes, l'une en AMD, l'autre en Intel, histoire de voir si l'une ou l'autre des architectures processeur est plus sensible à la quantité de mémoire. Voici le détail de nos deux configurations :
  • Carte mère Asus M2N32-SLI Deluxe,
  • Processeur AMD Athlon 64 X2 5000+ 65nm,
  • NVIDIA GeForce 8800GTX 768 Mo,
  • Disque dur Hitachi 80 Go Serial-ATA 150
  • Carte mère Asus P5B Deluxe,
  • Processeur Intel Core 2 Duo E6600 (2,4 GHz),
  • NVIDIA GeForce 8800GTX 768 Mo,
  • Disque dur Hitachi 80 Go Serial-ATA 150
Modestes, hormis peut être pour la carte graphique, nos deux configurations tournaient sous Windows XP Professionnel Service Pack 2. L'idée étant de vérifier l'apport de la quantité mémoire vive avec le système d'exploitation le plus répandu du moment. Nous utilisons à chaque fois des barrettes mémoire Corsair Twin2X PC6400 avec 2x512 Mo pour faire 1 Go, 2x 1 Go pour atteindre les 2 Go et 4x 1 Go pour grimper à 4 Go de mémoire vive. Le moindre PC entrée de gamme étant dorénavant commercialisé avec 1 Go de mémoire vive, nous faisons l'impasse sur les tests avec seulement 512 Mo de mémoire. Voici les trois scénarii de test retenus :

Décompression de fichiers Winrar 3.70

Le premier d'entre eux est assez simple, il s'agit de mesurer le temps nécessaire pour la décompression d'une archive WinRAR d'un peu plus de 466 mégaoctets. On effectue le test avec 1 Go de mémoire vive, puis 2 Go puis enfin 4 Go. À chaque changement de quantité mémoire, nous utilisons les mêmes réglages au niveau des temps de latence et de la tension. Les réglages sont naturellement reproduits à l'identique d'une plate-forme à l'autre et les résultats sont exprimés en secondes. De fait, la lecture des graphiques est inversée, la barre la plus courte représente le meilleur résultat.

Plate-forme AMD

00566035-photo-dossier-m-moire-plate-forme-amd-winrar.jpg


Plate-forme Intel

00566038-photo-dossier-m-moire-plate-forme-intel-winrar.jpg


Premier constat évident, l'apport de mémoire semble plus bénéfique sur la plate-forme Intel que sur la plate-forme AMD. Sur notre configuration AMD, le fait de passer de 1 à 2 Go de mémoire vive réduit de trois secondes le temps nécessaire à la décompression alors que sur la plate-forme Intel la même opération réduit de six secondes le temps nécessaire. Et alors que les 4 Go ne produisent aucun effet sur la plate-forme AMD, ils améliorent très légèrement le temps de décompression sur notre Core 2 Duo.

Temps de chargement Battlefield 2 - v1.41 - 1920x1440

Sous Battlefield 2, nous mesurons le temps nécessaire pour charger la carte Dalan Plant. Petite subtilité toutefois, plutôt que de mesurer le temps pris par le premier chargement de la scène, nous procédons a celui-ci avant de revenir au menu du jeu pour relancer la même scène, toujours en solo, et mesurer cette fois le second temps de chargement. Les résultats sont exprimés en secondes et les réglages graphiques sont poussés au maximum, sans toutefois activer les fonctions d'anticrénelage qui elles font appel à la mémoire vidéo et non celle de la machine.

Plate-forme AMD

00566036-photo-dossier-m-moire-plate-forme-amd-bf2.jpg


Plate-forme Intel

00566039-photo-dossier-m-moire-plate-forme-intel-bf2.jpg


L'écart entre les diverses quantités de mémoire sous Battlefield 2 est ici assez conséquent et si le passage à 4 Go n'apporte rien, le delta de performance entre les 1 Go et les 2 Go est ici légèrement plus conséquent sur la plate-forme AMD que sur notre configuration Intel. Sur un temps de chargement avoisinant les trente secondes, on gagne tout de même dix secondes en passant de 1 Go à 2 Go de mémoire vive.

Adobe Premiere Pro CS3

Ce dernier scénario consiste à calculer le temps mis par Premiere Pro CS3 pour effectuer le rendu, et seulement le rendu, d'un projet PAL en AVI lourdement chargé en effets spéciaux de tous ordres. Afin de stresser au maximum le système nous faisons tourner parallèlement une session de Firefox avec plus d'une vingtaine d'onglets ouverts simultanément. À lui seul, Firefox occupe près de 200 Mo de mémoire vive.

Plate-forme AMD

00566037-photo-dossier-m-moire-plate-forme-amd-premiere.jpg


Plate-forme Intel

00566040-photo-dossier-m-moire-plate-forme-intel-premiere.jpg


Si jusque là, le passage de 1 à 2 Go de mémoire vive produisait tout de même un certain effet sur les performances de nos deux systèmes, ce qui n'est pas le cas il est vrai des 4 Go, Premiere Pro dans sa dernière édition affiche des résultats fort peu concluants. Et ce que ce soit sur plate-forme AMD ou Intel. L'augmentation de la quantité de mémoire ne semble en effet avoir aucun impact sur le temps de rendu de notre projet.

Quid de Windows Vista ?

Encore marginal, Windows Vista s'est déjà trouvé une place au soleil puisqu'il est préinstallé depuis plus de six mois sur la grande majorité des PC vendus neufs. Nous avons donc voulu vérifier si le comportement de Windows Vista était semblable à celui de Windows XP lors de l'ajout de mémoire. Pour ce faire nous reprenons notre plate-forme Intel en Core 2 Duo E6600 pour exécuter les tests ci-après. Notez que nous désactivons tous les services de Vista, de la restauration système, à l'indexation des fichiers en passant par Windows Defender.

WinRAR 3.70

00566686-photo-dossier-m-moire-winrar-sous-vista.jpg

Premier constat évident, alors que l'augmentation de la quantité mémoire sous Windows XP ne provoquait que des gains infinitésimaux lors de la décompression WinRAR, Windows Vista semble plus sensible à cet argument. En effet, plus la machine comporte de la mémoire, plus le temps nécessaire à la décompression est court. Si le gain entre 1 et 2 Go est plus qu'important, le passage de 2 à 4 Go n'améliore que très légèrement les performances.

Battlefield 2 - v1.41 - 1920x1440

00566687-photo-dossier-m-moire-battlefield-2-sous-vista.jpg

Battlefield 2 permet à lui seul de comprendre pourquoi le gigaoctet de mémoire est définitivement insuffisant sous Windows Vista. Le temps requis pour le chargement des maps est interminable et alors que le premier chargement s'effectue en plus de deux minutes, le second demande plus d'une minute ! Notez que nous avons bien sûr répété le test pour nous assurer que le résultat nétait en aucune façon faussé. Avec 2 Go de mémoier vive, le temps nécessaire au second chargement de la carte retombe à une valeur beaucoup plus acceptable alors que le passage à 4 Go n'apporte pas grand chose.On reprend les mêmes... et on recommence ! Ici nous allons chercher à mettre en avant l'importance des paramètres de fréquence et de latence de la mémoire sur les performances de notre machine. Pour ces tests, nous utilisons une seule configuration, à base de solutions Intel, dont le détail figure ci-dessous :
  • Carte mère Asus P5B Deluxe,
  • Processer Intel Core 2 Duo E6600 (2,4 GHz),
  • Carte graphique NVIDIA GeForce 8800 GTX,
  • Disque dur Hitachi 80 Go Serial-ATA 150
Fonctionnant sous Windows XP Professionnel Service Pack 2, cette configuration faisait appel à des barrettes de mémoire DDR2 Corsair en Twin2X 5400C4, 6400C4, 6400C3 et 8500. A chaque fois, nous utilisons la même quantité de mémoire à savoir 2 Go. Notez que du fait des ratios mémoires du chipset P965 animant notre carte mère, nous n'avons pas pu monter au delà de 1066 MHz de fréquence mémoire sauf à overclocker notre processeur, chose que nous nous sommes refusé à faire puisque cela aurait fausser les comparaisons.

PCMark 05 - v1.2.0 - Test mémoire

00566605-photo-dossier-m-moire-pcmark-05-m-moire.jpg

Nous démarrons cette courte série par un coup d'oeil aux performances mémoire sous PCMark 05. En bonne logique, la DDR2-800 affiche de meilleures performances que la DDR2-667 alors que l'amélioration des latences de la DDR2-800 permet de grappiller un peu en performance. Entre la DDR2-800 4/4/4/12 et la DDR2-800 3/4/3/9, les performances augmentent de 1,5%. Si les temps de latence plus agressifs permettent d'améliorer les performances, ils ne parviennent toutefois pas à compenser l'augmentation de la fréquence, la DDR2-1066 affichant les meilleurs scores.

Far Cry v1.4 - 1024x768

00566591-photo-dossier-m-moire-farcry.jpg

En attendant Far Cry 2, la version actuelle nous apprend que plus la mémoire est rapide en terme de fréquences, meilleures sont les performances ; mais est-ce une surprise ? Entre la DDR2-667 et la DDR2-1066 le gain de performances s'établit tout de même à 5%. Comparativement au framerate obtenu avec de la DDR2-800 4/4/4/12, les performances progressent de presque 3% en utilisant de la DDR2-1066 dont les latences sont pourtant nettement moins affriolantes (5/5/5/15).

Sandra Xi SP1 - Test mémoire

00566593-photo-dossier-m-moire-sandra-xi.jpg

Nous refermons cette petite série de tests par un aperçu des performances mémoire selon Sandra Xi. Test synthétique par excellence, Sandra se contente ici de mesurer la bande passante mémoire. Plus la fréquence mémoire est élevée plus la bande passante s'envole. Fort de ce constat, et sans surprise, la bande passante offerte par la DDR2-667 est la plus faible alors que la bande passante obtenue avec notre DDR2-1066 est la plus élevée. Sandra Xi s'avère tout de même sensible aux temps de latence et de nos deux configurations mémoire en DDR2-800 c'est celle avec les timings les plus agressifs (3/4/3/9) qui obtient le meilleur score, la bande passante théorique relevée étant 2% supérieure.

Conclusion

000000A500088274-photo-puces-m-moire-ddr3.jpg
Arrivés au terme de cet article, force est de constater que l'augmentation de la quantité de mémoire vive n'est pas forcément synonyme de performances améliorées. Nos tests sous Windows XP n'ont en effet pas mis en avant de gains significatifs lors des augmentations successives de la quantité de mémoire vive. Certes Winrar et plus encore Battlefield 2 profitent bien du passage de 1 Go à 2 Go, mais les 4 Go semblent ne servir à rien alors que dans certains cas ils sont synonymes de performances carrément revues à la baisse. Et que dire de Premiere Pro CS3, un logiciel de montage vidéo professionnel qui semble n'avoir cure de la quantité de mémoire, le temps de rendu de notre projet étant invariablement identique que nos machines soient munies de 1, 2 ou 4 Go de mémoire vive.

Sous Windows Vista, le constat est tout autre ! Nos tests montrent en effet que le dernier système d'exploitation de Microsoft a le plus grand mal à se satisfaire de 1 Go de mémoire vive, le passage à 2 Go augmentant largement ses performances. Et contrairement à Windows XP, Windows Vista profite également d'une augmentation de la mémoire à 4 Go mais le gain obtenu face à la configuration avec 2 Go de mémoire est là particulièrement limité. Dans tous les cas, ne perdons pas de vue qu'à l'usage une plus grande quantité de mémoire provoque systématiquement un meilleur confort d'utilisation, un paramètre difficilement mesurable par nos outils de test...

Si la quantité de mémoire joue finalement assez peu sur les performances du système, sa rapidité intrinsèque a en revanche un impact beaucoup plus important. Et l'on constate une fois encore que la fréquence de la mémoire est le paramètre le plus important dans les performances système lorsque l'on considère la DDR2. Les temps de latence de la mémoire ont certes un impact sur les performances, mais celui-ci est généralement compensé par une montée en fréquence. Comprenez qu'entre une barrette de DDR2-800 annoncée en 4-4-4-12 et une barrette de DDR2-1066 en 5-5-5-15, c'est cette dernière qui offrira les meilleures performances même si ces temps de latence sont moins bons que ceux de la DDR2-800.

En définitive, cet article nous apprend que la quantité de mémoire n'est pas le paramètre principal dans les performances d'un PC et qu'entre le trop ou le pas assez il faut parfois viser le juste milieu. Si la quantité de mémoire n'a pas d'incidence sur les performances, c'est sans surprise sa fréquence de fonctionnement qui jouera le plus sur la vélocité de votre machine. A la lecture de ces lignes, vous devriez donc être armé pour choisir la configuration mémoire répondant le mieux à vos besoins et exigences.

000000F000502965-photo-corsair-ddr3-1066.jpg


Haut de page