nexthardware.com
a cura di: Vincenzo Parrello - v_parrello

DDR2 vs DDR3: tutta la verità

Si cercherà di rispondere ad una delle domande più ricorrenti in questo momento: le nuove memorie DDR3 sono più performanti delle memorie DDR2?

Il dilemma del momento per tutti gli appassionati che si accingono a rinnovare la propria piattaforma hardware si riassume nelle seguenti domande:

  • meglio rimanere con memorie DDR2 oppure passare a memorie DDR3?

  • la spesa aggiuntiva fatta per passare a una piattaforma DDR3 avrà dei ritorni in termini di performance?

Il presente articolo ha lo scopo di appurare se le memorie DDR3 siano più performanti delle attuali DDR2.

A tale scopo saranno fatte delle sessioni di test per capire come le RAM costruite con le due tecnologie si comportano in varie condizioni di utilizzo.


 

1. Sistema di prova

Viene descritto l'hardware e la metodologia impiegata per i test.

Sistema di prova


I test saranno effettuati utilizzando due schede madri basate su chipset Intel P35 che come è noto garantisce il supporto sia alle memorie con tecnologia DDR2 che a quelle costruite con tecnologia DDR3.

In particolare saranno utilizzate due schede madri che al momento sono tra le migliori presenti sul mercato in termini di stabilità, affidabilità e capacità di salire in overclock e cioè la Asus P5K-E che supporta memorie DDR2, e la Asus P5K3 De Luxe che supporta memorie DDR3.

Come memorie la scelta è caduta su due kit già recensiti sul portale le OCZ PC2-9200 5-5-5-18 HPC Reaper Edition e le Supertalent PC3-12800 7-7-7-18.

Le sessioni di test sono state eseguite con lo stesso hardware semplicemente cambiando la scheda madre.

La piattaforma di test è dettagliata nella seguente tabella:


Processore

Intel Core 2 Duo E6420

Scheda Madre

Asus P5K-E bios 0503

Asus P5K3 De Luxe bios 0604

Chipset

P35

RAM Utilizzate

DDR2 OCZ PC2-9200 5-5-5-18 @2.3v HPC Reaper Edition

DDR3 SuperTalent PC3-12800 7-7-7-21 @1.8v

Scheda Video

Nvidia 8800 GTS 640 MB driver Nvidia Forceware 158.22

Hard Disk

WD Raptor 74 GB 8 MB cache su ICH9R

Raffreddamento

Aria con Zalman 7700Cu

Alimentatore

Nexus SuperSilent 600 watt

Sistema Operativo

Windows XP SP2 aggiornato con le ultime patches


Gli applicativi utilizzati per le sessioni di benchmark sono:


Bechmarking sintetico

EVEREST Ultimate Edition v4.00.976

ScienceMark 2.0

SiSoftware Sandra Pro Personal XI 2007.6.11.42

SuperPI mod 1.5XS 2M

CPU Bench 2003 beta2

3DMark06 Professional Edition 1.0.2

3DMark01 SE Pro Build 330

Benchmarking applicazioni utilizzo quotidiano

Adobe Photoshop Elements

7-Zip 4.42

FEAR 1.07

Far Cry 1.33

Call Of Duty 2 1.2

Quake 4 1.3


I benchmark riassunti nella tabella precedente saranno eseguiti su diversi punti di misura (frequenze e timings) e saranno confrontati i risultati delle DDR2 con le DDR3 nelle seguenti due condizioni:

  1. stesse frequenze operative e stessi timings per vedere come le memorie si comportano nelle stesse identiche condizioni di funzionamento;

  2. timings e frequenze operative sulle DDR3 doppie rispetto a quelle sulle DDR2 per fare delle considerazioni sulle latenze e della banda delle memorie DDR2 rispetto a quelle delle memorie DDR3 (per esempio DDR2-900 4-4-4-12 e DDR3-1800 8-8-8-24).


 

2. Latenze DDR2 vs DDR3: un pò di teoria

Vengono chiariti alcuni concetti basilari sulle latenze e i timings delle memorie, e confrontate le latenze misurate per DDR2 e DDR3 in simili condizioni operative

Latenze DDR2 vs DDR3: un po' di teoria

Si sente spesso dire che le latenze delle nuove memorie DDR3 sarebbero più elevate di quelle delle memorie DDR2, e si adduce come giustificazione tecnica il fatto che i timings primari delle DDR3 sono quasi il doppio di quelli delle DDR2 alle frequenze dichiarate di targa. Nulla di più errato e ingannevole può essere affermato.

Per misurare i timings di funzionamento interno delle memorie vengono generalmente utilizzate due notazioni:

  • il periodo T della frequenza di clock ovvero della frequenza di funzionamento delle memorie;

  • il tempo misurato in nanosecondi ns (un miliardesimo di secondo), o ancora in microsecondi µ s (un milionesimo di secondo).


Col termine latenza si intende l'intervallo di tempo che intercorre tra l'istante in cui si inizia l'operazione di accesso (inviando indirizzo e segnali controllo) e l'istante in cui l'operazione di accesso termina (consentendo alla CPU di procedere con altre attività). La misura di latenza può essere concettualmente organizzata pensando ad una sola operazione di accesso "cronometrata" dall'inizio alla fine.

La latenza quindi terrà conto di tre componenti principali:

  • la latenza propria delle memorie;

  • la latenza del chipset o meglio del memory controller integrato nel northbridge (per l'architettura Intel utilizzata in questa prova);

  • la latenza della cache del processore (trascurabile rispetto alle prime due componenti).

Nel proseguo ci concentreremo soprattutto sulla latenza propria delle memorie visto che le altre due latenze dovrebbero essere un invariante per la modalità con cui vengono eseguite le prove (stesso chipset P35 e stesso processore).

La latenza, ossia il ritardo con cui il chip di memoria inizia a rispondere a una richiesta di dati, è la somma di vari ritardi elementari che si verificano in vari punti della sua architettura logica. Così, per esempio, l'indicazione “2-2-2-5-1” sta a indicare rispettivamente i cinque ritardi funzionali (CAS, RAS to CAS, RAS precharge, RAS Acitve Time, Command) che concorrono a formare la latenza complessiva del modulo, espressi in cicli di clock.

Quindi i timings primari influenzano in larga parte la latenza delle memorie:

  • CAS Latency (CL)

  • RAS To CAS Delay (tRCD)

  • RAS Precharge (tRP)

  • RAS Active Time (tRAS)

Essi sono misurati in periodi T della frequenza di funzionamento delle memorie. Infatti la notazione corretta per indicare un modulo di memoria capace di funzionare con CAS Latency pari a 3 sarebbe 3T e non come comunemente viene indicato con il 3 omettendo la T. Analogo discorso vale per gli altri timings in esame.

Questo uso comune di indicare i timings trae in inganno parecchie persone che sono portate a pensare che il CAS sia un numero assoluto e non dipenda assolutamente dalla frequenza di funzionamento delle memorie, cosicché per esempio una memoria DDR2-800 che è capace di funzionare con CAS 3 nella credenza comune sarebbe migliore, dal punto di vista della latenza introdotta dal CAS, di una memoria DDR3-1600 capace di funzionare con CAS 6.

Nulla di più errato potrebbe essere affermato e nel seguito si cercherà di fare un po' di chiarezza.

La frequenza di funzionamento della memoria è legata al periodo T dalla seguente relazione:

frequenza=1/T

da cui si ricava

T=1/frequenza

Applicando questa semplice formula all'esempio precedente cioè DDR2-800 MHz CAS 3 e DDR3-1600 MHz CAS 6 si otterrà che:


T = 1/frequenza DDR2 = 1/800 MHz = 1/800000000 = 0,000000125 secondi = 1,25 ns

quindi CAS 3 per memorie che funzionano a DDR2-800 MHz significa 3*1,25 ns = 3,75 ns.


Facendo un ragionamento analogo per le DDR3-1600 MHz CAS 6 si avrà

T = 1/frequenza DDR3 = 1/1600 MHz = 1/1600000000 = 0,000000125 secondi = 0,625 ns

quindi CAS 6 per memorie che funzionano a DDR3-1600 MHz significa 6*0,625 ns = 3,75 ns.


Magicamente è uscito fuori che entrambe le memorie introducono la stessa latenza pur avendo una il CAS pari al doppio dell'altra e il motivo di questa cosa è che oltre al CAS anche la frequenza è il doppio dell'altra.

Utilizzando questa formula con diversi valori dei timings si ottiene la seguente tabellina che converte il periodo T in nanosecondi in diverse condizioni operative di frequenza:


image


Con questa tabella si vede facilmente che un modulo di memoria che funziona ad una frequenza di 800 MHz con CAS Latency pari a 3T ovvero 3,75 ns equivale, dal punto di vista della latenza, ad un modulo che funziona a 1600 MHz con CAS Latency pari a 6T che equivale sempre a 3,75 ns.

Quindi per esempio un modulo che funziona a DDR2-800 MHz 3-3-3-9 equivale, dal punto di vista della latenza ad un modulo che lavora a DDR3-1600 MHz 6-6-6-18. Analogamente un modulo che funziona a DDR2-900 MHz 4-4-4-12 equivale, dal punto di vista della latenza ad un modulo che lavora a DDR3-1800 MHz 8-8-8-24.

Si spera di essere stati chiari in questa esposizione e chi ha avuto la pazienza di leggere e capire quanto detto non dovrebbe più cadere nel tranello di considerare le latenze introdotte dai timings delle memorie come numeri assoluti, e pensare che a timings più bassi corrispondano latenze più basse indipendentemente dalle frequenze di funzionamento delle memorie.


 

3. Test di latenza

In questo paragrafo vengono messe a confronto le leatenze introdotte dalle memorie DDR2 e DDR3 in diverse condizioni operative

Test di latenza

Saranno effettuati due serie di test, una che mette a confronto le memorie nelle stese identiche condizioni operative a 1000 e 1200 MHz con timings 5-5-5-15.

L'altra serie mette a confronto le memorie a DDR2-800 MHz con timings 3-3-3-9 e DDR3-1600 MHz con timings 6-6-6-18 e DDR2-900 MHz con timings 4-4-4-12 e DDR3-1800 MHz con timings 8-8-8-24.

Secondo quanto visto nel paragrafo precedente dal punto di vista della latenza siamo esattamente nelle stesse condizioni operative nel senso che le memorie testate con quei timings e a quelle frequenze introducono esattamente la stessa latenza.


Il tool utilizzato è Lavalys Everest ed il benchmark di latenza misura il ritardo che c'è quando la CPU legge dei dati dalla memoria RAM. In particolare la latenza è misurata dal momento in cui la CPU fa la richiesta di lettura dei dati dalla memoria fino a quando i dati stessi non arrivano nei registri interni della CPU. Il codice utilizzato per fare questo test è scritto in Assembler e va a leggere 1024 byte di dati.


image


I risultati di questo test evidenziano due cose:

  • la bontà del metodo utilizzato per fare la comparazione: i risultati praticamente uguali stanno ad indicare che l'hardware utilizzato per la prova non influenza le misure;

  • le memorie DDR2 e DDR3 dal punto della latenza nelle stesse identiche condizioni operative si comportano allo stesso modo, e tutte le ottimizzazioni sviluppate nell'architettura logica interna delle DDR3 rispetto alle DDR2 non hanno alcun effetto a questa velocità.


image


In queste condizioni operative abbiamo la CPU che funziona alla stessa frequenza, FSB identico e quindi la latenza del memory controller integrato nel northbridge e della cache interna della CPU è inalterata, quello che cambia è la frequenza di funzionamento delle memorie. Nei due set di prove DDR2-800 3-3-3-9 contro DDR3-1600 6-6-6-18 e DDR2-900 4-4-4-12 contro DDR3-1800 8-8-8-24 la latenza introdotta dai timings delle memorie in nanosecondi è rispettivamente 3,75 ns-3,75 ns -3,75 ns-11,25 ns e 4,44 ns-4,44 ns-4,44 ns-13,33 ns.

Inoltre è stato introdotto un altro punto di misura con DDR2-1200 MHz 5-5-5-15 che è la massima frequenza operativa stabile (per tutti i benchmark utilizzati) ottenibile dalle memorie DDR2 in nostro possesso, contro le DDR3 a 1920 MHz con timings 8-8-8-24. La frequenza del punto di misura della DDR3 è stata scelta in modo da introdurre la stessa latenza con i timings principali delle DDR2 (8-8-8 che corrisponde a 1920 MHz a 4,17ns-4,17 ns-4,17ns così come 5-5-5 a 1200 MHz è sempre 4,17ns-4,17 ns-4,17ns). Per ottenere questo risultato si è dovuto variare il FSB e la frequenza della CPU che sono superiori nel caso delle DDR2 500x7 contro 480x7 delle DDR3. La prova è comunque significativa perché consente di paragonare il massimo risultato, in termini di latenza ottenibile dalle DDR2 in nostro possesso con le DDR3. Si vede che anche in queste condizioni la latenza delle DDR3 si mantiene comunque migliore di quella della DDR2.

C'è da notare che al di sopra dei 450 di FSB il chipset P35 sembra introdurre delle latenze più alte, infatti si nota una leggera flessione dei valori di latenza misurati che vale sia per le DDR2 che per le DDR3.

Quindi a parità di latenza introdotta dai timings principali delle memorie e di tutto il resto (latenza chipset e cache processore) si vede che la musica cambia. Tutte le evoluzioni presenti nelle memorie DDR3 sotto forma di ottimizzazioni dell'architettura logica interna delle memorie, e soprattutto la frequenza maggiore di “scodamento” dei bit prelevati dalle celle di memoria verso il bus dati esterno passando attraverso i buffer dati interni alle memorie (che funzionano a frequenza doppia del bus dati esterno) fanno sentire il loro peso.

Cade un mito che è quello legato alla cattiva interpretazione dei timings delle memorie e che portava a pensare che timings in assoluto più bassi corrispondevano a latenze minori, non è così per due motivi:

  • il numero che indica i timings va rapportato alla frequenza di funzionamento;

  • l'architettura logica interna delle memorie DDR3 è migliore di quella delle DDR2.

Quindi a parità di latenze di funzionamento, impostate attraverso i timings principali delle memorie (CAS, RAS to CAS, RAS Precharge, RAS Active Time), le DDR3 sono assolutamente superiori alle DDR2: non c'è partita.

Come questo poi si traduca su un reale beneficio sulle applicazioni di utilizzo giornaliero, legato ad una percezione più o meno marcata di aumento di performance, è tutto da discutere. Ma è fuori discussione il fatto che le memorie DDR3 siano più performanti dal punto di vista della latenza delle attuali memorie DDR2.


 

4. Test di banda

Verranno comparate le prestazioni di banda delle memorie DDR2 e DDR3 dal punto di vista della banda

Test di banda

Anche in questo caso saranno effettuate due serie di test, una che mette a confronto le memorie DDR2 e DDR3 nelle stesse identiche condizioni operative a 1000 e 1200 MHz con timings 5-5-5-15.

L'altra serie di test mette a confronto le memorie a DDR2-800 MHz con timings 3-3-3-9 contro DDR3-1600 MHz con timings 6-6-6-18 e DDR2-900 MHz con timings 4-4-4-12 contro DDR3-1800 MHz con timings 8-8-8-24.

Dal punto di vista della latenza siamo esattamente nelle stesse condizioni operative nel senso che le memorie testate con quei timings e a quelle frequenze introducono esattamente la stessa latenza. Anche la frequenza della CPU e quella de FSB sono identiche nelle due serie di test.

Anche qui è stato introdotto un altro punto di misura con DDR2-1200 MHz 5-5-5-15 che è la massima frequenza operativa stabile (per tutti i benchmark utilizzati) ottenibile dalle memorie DDR2 in nostro possesso, contro le DDR3 a 1920 MHz con timings 8-8-8-24. La frequenza del punto di misura della DDR3 è stata scelta in modo da introdurre la stessa latenza con i timings principali delle DDR2 (8-8-8 che corrisponde a 1920 MHz a 4,17ns-4,17 ns-4,17ns così come 5-5-5 a 1200 MHz è sempre 4,17ns-4,17 ns-4,17ns). Per ottenere questo risultato si è dovuto variare il FSB e la frequenza della CPU che sono superiori nel caso delle DDR2 500x7 contro 480x7 delle DDR3. La prova è comunque significativa perché consente di paragonare il massimo risultato, in termini di banda ottenibile dalle DDR2 in nostro possesso con le DDR3. Si vede che anche in queste condizioni la latenza delle DDR3 si mantiene comunque migliore di quella della DDR2.

I tool utilizzati sono Lavalys Everest e Sisoftware Sandra. I due tool differiscono per il fatto che Sandra misura il sustained memory bandwidth ovvero la banda misurata in maniera continua sulla memoria che è diverso dai valori di picco rilevati da Everest. Mettendo assieme tali dati si avrà la banda “efficace” ovvero sostenuta dalla memoria in maniera continua e i valori di picco.


image


image


In buona sostanza si possono confermare risultati analoghi a quelli delle misure di latenza:

  • si riconferma la validità del metodo utilizzato per testare le memorie, perché nelle stesse identiche condizioni operative i risultati sono pressoché uguali. Questo induce a pensare dire che il sistema di misura non introduce “rumori” nelle misurazioni. Unica differenza è nella misurazione di “copy” in cui si nota una performance migliore da parte delle DDR2. Questa differenza sicuramente è da ricercare nella differente architettura logica che c'è tra memorie DDR2 e DDR3 e che porta a penalizzare queste ultime quando lavorano a frequenze troppo basse rispetto a quelle per cui sono state progettate a lavorare.

  • le memorie DDR2 e DDR3 dal punto della latenza nelle stesse identiche condizioni operative si comportano allo stesso modo, e tutte le ottimizzazioni sviluppate nell'architettura logica interna delle DDR3 rispetto alle DDR2 non hanno alcun effetto a questa velocità. Anzi come si è visto nel memory copy addirittura l'architettura logica delle DDR3 potrebbe introdurre delle disottimizzazioni.


image


image


In questo caso a parità di tutto il resto (frequenza CPU, frequenza FSB, latenze introdotte dai timings) è chiaro ed intuitivo il risultato che è venuto fuori e che sancisce la netta superiorità delle DDR3 sulle DDR2 in termini di performance relative alla banda. Le DDR3 sono state progettate per funzionare a frequenze doppie delle DDR2 e questo si riflette in maniera diretta sulla banda passante delle memorie. Stesso risultato viene fuori anche nel punto di misura in cui si confrontano le DDR2-1200 MHz con DDR3-1920 MHz i cui sia FSB che frequenza della CPU sono a vantaggio delle DDR2.

 

5. Test Prestazionali

Verranno confrontati i risutati di benchmark sintetici, di gaming e di applicazioni di utilizzo quotidiano ottenuti con DDR2 e DDR3

Test Prestazionali

In questo paragrafo si vuole vedere quanto i risultati ottenuti sula latenza e sulla banda incidono sulle prestazioni globali del sistema e sull'utilizzo giornaliero del computer. A tale scopo si farà uso di benchmark sintetici e benchmark basati su applicazioni di utilizzo quotidiano.

Saranno confrontate le memorie tenendo fissa la frequenza della CPU e del FSB ed impostando timings che introducono le stesse latenze.

Pertanto i punti di misura saranno DDR2-800 3-3-3-9 contro DDR3-1600 6-6-6-18 con FSB 400 MHz e CPU a 3.2 Ghz, e DDR2-900 4-4-4-12 contro DDR3-1800 8-8-8-24 con FSB 450 MHz e CPU a 3.6 Ghz. Non sono stati considerati i punti di misura utilizzati nei precedenti paragrafi in cui, pur essendo le latenze introdotte dai timings le stesse, non si era riuscito ad ottenere la stessa frequenza di CPU e di FSB perché si potrebbe dare luogo a dei risultati di difficile se non di impossibile interpretazione.


image

3DMark01

image

3Dmark06

image

Call of Duty 2

image

Far Cry

image

FEAR

image

Quake 4


I test prestazionali con applicativi di gaming e benchmark sintetici di gaming confermano quanto già visto nei test di latenza e banda: le memorie DDR3 sono più performanti delle DDR2. A seconda dell'applicativo il divario è più o meno netto però le DDR3 sono sempre in vantaggio rispetto alle DDR2.


image

CPU Bench 2003

image

ScienceMark 2.0

image

SuperPI XS 1.5 2M

image

PCMark05

image

7-Zip

image

Adobe Photoshop Elements


Anche in questo caso, con maggiore o minore divario a seconda del benchmark, le memorie DDR3 si dimostrano più performanti delle DDR2 nella totalità dei casi.

 

6. Conclusioni

Si tirano le conclusioni basandosi sulle misure fatte nei paragrafi precedenti e su altri fattori non deducibili direttamente dalle misure stesse

Conclusioni

In sintesi le memorie DDR3 si sono dimostrate sin dalla loro comparsa più performanti delle ormai mature e collaudate DDR2.

Il motivo della subitanea affermazione delle DDR3 è da ricercarsi nella disponibilità di un chipset, il P35, che ha consentito di sfruttarne appieno da subito le potenzialità. E' ovvio che ancora ci sono margini di miglioramento notevoli legati a due fattori:

  • uno relativo alla nascita futura di chip di memoria DDR3 con timings ancora più bassi e frequenze di esercizio sempre più elevate;

  • l'altro relativo alla nascita di nuovi chipset capaci di operare alla frequenza di FSB default pari a 400 MHz (già si vocifera del successore dell'X38 che sarebbe l'X48 che avrà proprio questa caratteristica) capace di sfruttare la velocità base delle DDR3 che ormai si sta attestando intorno ai 1600 MHz (la quasi totalità dei chip è 1333 MHz per la fascia entry level delle memorie DDR3, 1600 MHz per la fascia media, e 1800-1866 MHz per la fascia top delle memorie). Ovviamente la nascita di tali chipset sarà strettamente correlata alla nascita di processori capaci di operare a default a 400 MHz (oggi siamo a 333 MHz).

Come in tutte le tecnologie nascenti il freno iniziale alla diffusione massiccia delle DDR3 è il prezzo che si attesta intorno a 400-500€ per dei buoni kit 2x1GB, di contro delle buone DDR2 costano all'incirca un terzo.

Infine con questo focus si spera di aver chiarito la questione relativa ai timings primari delle memorie, misurati in T (periodo del clock di funzionamento), che non vanno letti scorrelati dalle frequenze di esercizio, e che sono uno dei principali motivi addotti da molti per giustificare (sbagliando) la presunta supremazia sulle performance dei moduli DDR2 attuali aventi timings considerati a torto minori e che introdurrebbero quindi una minore latenza.


Si ringraziano Syspack Computer Italia ( www.syspack.com) e SuperTalent ( www.supertalent.com) per aver fornito i sample utilizzati nel presente focus.


RATING: stelle
 
Questa documento è stato stampato dal portale nexthardware.com. Tutti i relativi contenuti sono di esclusiva proprietà di nexthardware.com.
E' vietata la copia e la distribuzione, anche parziale, su qualsiasi supporto senza l'autorizzazione scritta della società proprietaria del portale nexthardware.com.
Informazioni legali: http://www.nexthardware.com/info/disclaimer.htm