Memory rating numbers and actual transfer rate

Lord-Ilpolazzo

Distinguished
Mar 14, 2006
182
0
18,690
I have always understood that the rating numbers used to describe memory, eg PC2700, PC3200 describe the peak transfer rate in Gb/sec. I have never seen in any memory bandwidth benchmark i have tried memory actually giving this rate.

In my case i have a mobile athlon 64 4000+, with PC2700 memory. The best it seems to be able to do is around 1990Mb/sec, however using A64 tweaker i was able to change the memory command rate from 2T to 1T, and the maximum bandwidth went up to about 2200Mb/Sec, bit better, but still a long way short of the 2700Mb/sec goal.

Sooooo my question is "is this how it is with all memory".. are the peak numbers given some sort of raw bandwidth figure, and the lower numbers i saw above are actual bandwidth less overheads and so on?
 

chookman

Distinguished
Mar 23, 2007
3,319
0
20,790
This is interesting id like someone a little more knowledgable to answer, But...
I believe youll find the rating ie PC2700 is in optimal conditions, so we are thinking temperature, component aging, resistance, other machine compontents, software... and i would think the list goes on.

Same as when you buy yourself a brand new car and they say the engine puts out 100 (HP or KW), that will be tested on a dyno in optimal conditions... and when you buy the car and test it you get ~80-100... Its a peak in optimal conditions.
 

WazzaUK

Distinguished
Oct 4, 2007
193
0
18,690
Peak Bandwidth = (Memory Bus Width) x (Data Rate)
where Data Rate = (Memory Bus Speed x Operations/Clock Cycle)

Peak bandwidth for PC2700 DIMMs
(8 Bytes) x (333 MHz Data Rate) = 2,664 MB/second
or 2.7 GB/second.

Peak bandwidth for PC3200 DIMMs
(8 Bytes) x (400 MHz Data Rate) = 3,200 MB/second
or 3.2 GB/second.

Like chookman said - theres other factors - like memory timings etc... and most importantly quality of memory...
 

Lord-Ilpolazzo

Distinguished
Mar 14, 2006
182
0
18,690
Yep this is what i mean.. the numbers work out fine on paper, but in reality the result is completely different. I am trying to find out the clear answer to why.

Is it because these peak bandwidth figures dont take into account realistic memory timing parameters.. all the various access times, address change times etc etc?
 
Like me I will not go with anything but Corsair as they have proven to be one of the best memory vendors around. A little pricy but yea they can normally get their peak bandwidth easily compared to cheaper versions.

The lower the memory timings the closer to the peak bandwidth you will get. Don't forget that its also based on your CPU, chipset, and probably even BIOS version as those updates may change a few things in terms of access speed.

The one thing that will bottleneck you is the harddrives as the data still has to be fetched from the harddrives before getting pushed to the emory. Thats why I am waiting to see a mobo that can support 50GB+ so we can test loading windows into pure memory and see what the difference is in performance considering you will move from SATA2 @ 300mb/s per drive to 3.2GB- 8.5GB/s(PC8500) in transfer rate.
 

chookman

Distinguished
Mar 23, 2007
3,319
0
20,790


I thought that about Corsair too, but i went to different memory companies and have had nothing but good experiences. I own Corsair, Patriot and Crucial... the main difference is the price nothing more (unless OCing).

50Gb of RAM? to load windows? RAM is volatile, once you install windows (assuming that windows can install itself onto memory space) and it reboots, youd have to install it again. The only way to get around this would be something like Gigabyte I-RAM solution which is then limited by the PCI bus (assuming that windows will install on it). The idea is craziness. SSD is the only way to go currently, but expensive atm.
 

mustardman24

Distinguished
Dec 26, 2006
59
0
18,630
yeah another factor to take in to account is your timings. For instance if you have 4-4-4-12, add all of those numbers up and divide the clock speed by that to find your output.
 

chookman

Distinguished
Mar 23, 2007
3,319
0
20,790


Is it just me or is this ludicrous? Adding those up we'd get 24, considering the memory clock speed of DDR2 800 is 200mhz we would get a little over 8mhz. Even is you were actually talking about peak transfer rates not clock speed it would be 6400mb/s divided by 24 would be 266mb/s. Dude ive seen RAID arrays read/write faster than that.
 

Lord-Ilpolazzo

Distinguished
Mar 14, 2006
182
0
18,690
right so to summarize... memory could achieve its peak bandwidth figures the closer to zero all the various timing parameters are? i.e some sort of incredibly exotic and expensive PC2700 ram in which the timings were zero cycles to complete any operation one would get 2.7Gb/sec right?

So in reality the PCxxxx rating only describes the peak rate at which data could be transferred over the bus given the frequency and bus width, assuming the memory was able to read or write or do any operation in one bus cycle.
 

starcraftfanatic

Distinguished
Aug 15, 2007
469
0
18,780
the ram bandwidth is just the maximum possible if it was swapping out and in information every clock cycle, but that never happens. It's mostly to coding and such, and architecture.
 
You can load Windows into RAM or at least a PC genius at my college stated you could. Either way that would be awesome.

Theoretically yes the closer to 0 in the timings the faster the ram would transfer data and the closer to its peak bandwidth it would get. But withe each generation of DDR the timings increase but the top end speed increases to compensate for that and will perform better. For instance DDR reached its peak of PC 4400(DDR550) but the lowest timings were on PC3200 at 2-2-2-5 compared to DDR2 PC6400 which is 4-4-4-12. Double the bandwidth but double the timings. In fact DDR2 is getting close to lower timings and DDR3 is reaching close to DDR2 but at much greater speeds. I have PC8500(DDR2 1066) running at 5-5-5-15 which is pretty good.

As time goes buy the newer generations get closer to the older ones but then a new one comes out(such as DDR3) and now DDR hasn't changed much since. But DDR2 and DDR3 are getting much better timings. Once DDR3's prices come down and the timings lower the performance should increase a lot especially at DDR3 1600.
 

Lord-Ilpolazzo

Distinguished
Mar 14, 2006
182
0
18,690


Good good. although i sort of took exception to the optimal conditions you suggested though such as

"temperature, component aging, resistance" as i dont think theyre relevant in this context, as they suggest that memory *sort of slows down over time like my old computer as it fills up with junk* kinda thing. Maybe it does wear, but thats a special case. During normal working life, the memory has specific timings it is designed to operate at/within, and as far as the computer is concerned they are fixed. Maybe one day for whatever reason (maybe extreems of temperature) the memory may fail to meet one or more of its timing parameters, in which case it can be considered simply broken. What im trying to say is that the memory either works within the specified timings or it doesnt, there is no slowing down as far as the computer is concerned.. It will transfer data at the same rate 10 years on as it does now.. or it will break. there is no between. I think you can prove this by simply changing any memory timing parameter in the bios.. reduce a timing parameter below that for which the memory is specified and nothing will wait to catch up if the memory does not do what it should within the expected time.. the computer will simply crash or ability to access memory successfully may become erratic.
 

Lord-Ilpolazzo

Distinguished
Mar 14, 2006
182
0
18,690


thanks, good explanation
 
You can lower the timings of which the memory is specefied at but the higher quality the ram(such as for OC'ing) the better the chances it will work properly. Also droping the timings is not like raising the FSB or multiplier. You can drop the timings(such as mine 5-5-5-15 but are specified at 5-5-5-18) a little but normally only a few more from the main.

So you can drop 5-5-5-15 to say 4-4-4-12 when running stock or even oc-ing but the chances of those timings running stable will be based on the quality. Corsairs higher end, Patriot and so on are better for this.

Heat is a factor of stability. If you have cheap ram without heat spreaders iand it runs too hot it can cause BSoD, hangs and crashes. Along with life. But quality ram will work longer. I have some Corsair XMS PC3200 in my old system thats 4 years old(P4 3.2GHz Northwood love that chip) and its still stable as a rock.