I just put together a kit for my dad. It's not meant to break any world speed records, but it will be a good upgrade for him.
The machine has the following:
AMD FX-4100 CPU, 3.6GHz, non over clocked, factory air cooler
Gigabyte GA-880GM-USB3 Motherbaord
G.SKILL Ripjaws DDR3 1600 RAM, 4GB running at 800 MHz 9-9-9-24
What I found odd was that when I installed Windows 7 Ultimate x64, I found that it scored very low on the windows experience index benchmark for memory performance, only hitting a 5.8. My personal computer runs DDR2 and scores a 7.2. I looked at CPUz and found that the MB had clocked the memory at 667 MHz instead of the 800 MHz it is rated for. I recorded the timings and went into the BIOS and manually set them, thinking that surely this would make a difference.
It made a difference alright, kicking it all the way up to 5.9. I fired up CPUz again and verified that the memory was indeed running at the correct speed and timings. I decided to run a more detailed test so I downloaded Passmark and ran it on both my father's machine and my trusty desktop and frankly I was stunned by the results.
The test results are as follows, dad's scores vs mine:
Allocate Small Block: 3219.3 vs 3840.1 MB/s (-16.2%)
Read Cached: 1869.3 vs 2650.7 MB/s (-29.5%)
Read Uncached: 1775.6 vs 2372.5 MB/s (-25.2%)
Write: 1383.4 vs 2041.1 MB/s (-32.2%)
Large RAM: 1039.6 vs 3743.0 OPS/s (-72.2%)
For comparison sake my desktop is as follows:
Intel Core 2 Quad Q6600 CPU, OC'd to 3.0GHz, Water Cooled
ASUS P5W DH Deluxe Motherboard
OCZ DDR2 800 RAM, 8GB running at 415 MHz 5-6-6-18
Now granted I know my memory is slightly overclocked but even so I would have thought DDR3 would have put up much bigger numbers, at least been somewhat competitive. Is DDR3 really not all it's cracked up to be or is the integrated memory controller on the AMD CPU just that bad? I know I didn't buy the fastest ram out there, but this just seems a little off.
I'm gonna set up the machine for my dad later this evening, I'll get the CPUz screenshots then. I would just do it but I've already got it disconnected ready to take over to him. He's gonna be happy no matter what, just kinda bugs me a little.
windows test can be very bad, for unknown reasons, and show low scores seen it many times. thou DDR2 got titer timing it can not compare to DDR3 bandwidth wise, i have quad core ddr2 system and newer rig with ddr3 and it blows away any memory benchmarks.
It is also common for motherboard not to see memory right ,, just go bios and set it to 1600, should show up right after that, thou the difference between 668 ram and 800 would be just few % nothing to cry about
I read on some Windows help info that it says if you have below 4gb it will always score 5.9 max, and if you have over 4gb or so it will score higher, i don't know if the OS counts being 64 bit or 32 bit, WEI is not so accurate anyways
I got a 7.9 score on mine using 8Gb of Corsair Vengeance DDR3 at 1600mhz
Ok, here are the screenshot of CPUz. I know the windows benchmark should be taken with a grain of salt, that's why I ran a much more comprehensive benchmark and found that it still loses in absolutely every performance category.
Just one point of clarification to make sure we're on the same page here... when you guys say your memory is running at 1600 MHz, are you referring to the ACTUAL MEMORY CLOCK RATE, or the APPARENT MEMORY CLOCK RATE (Due to DDR, it does stand for double data rate afterall).
Example - I know my "DDR2 800" actually runs at 400 MHz.
It would therefore make sense that "DDR3 1600 MHz" has an actual memory clock of 800 MHz. If this is not the case, and it's supposed to show an ACTUAL memory clock of 1600 MHz, this could indeed explain the poor performance. Being said, however, if this is the case, I wanna see a CPUz screenshot of memory actually being clocked at 1600MHz.
The first screen shows DRAM correctly -- 800MHz, but the second screen should be 1600MHz, and not 800MHz as it shows. Have you set the latencies manually?
You are severely confusing data transfer rate, apparent clock speed, whatever you want to call it, with actual bus clock speed. The first screen, meaning the TOP picture shows the actual speed that the ram bus is running at and its actual timings. The second screen merely shows what the RAM reports to the computer as to what should be the correct timings for any given clock speed. It lists 800MHz because that's all it will do. DDR3 only goes up to 1200MHz. Look above the clock speed you will notice it says XMP-1600, this is in reference to the DATA RATE, NOT the clock speed. If you have ram that actually shows 1600MHz, I want to see that because that was some expensive RAM. I say this because the FASTEST ram available currently on Newegg has a DATA RATE of 2400 which means an actual clock speed of 1200 MHz.
To answer your question, however, the latencies are set manually in the BIOS to match what the RAM reports. I could try to run them lower (tighter) to squeeze more performance out of it but then I'm running the ram out of spec which I don't want to do and is severely deviating from the point and my original question.
The difference between DDR2 and DDR3 is the BUS CLOCK and thus the DATA RATE. The memory itself, the physical RAM chips have the same performance characteristics. DDR2 800 and DDR3 1600 both have a core memory clock of 200 MHz. This is why the latencies are doubled, the memory can't physically respond any faster than it did, hence DDR2 800 with latencies of 4-4-4 and DDR3 1600 with latencies of 8-8-8 are the same because latencies are measured in CLOCK CYCLES. Since the DDR3 bus runs at exactly double the clock, the latency is exactly double.
I don't pretend to know what all the latencies do exactly and how each number impacts performance of the chips exactly. But what I do know is this. I have a system running DDR2 at 400MHz with timings set at 5-6-6-18. If I doubled the bus I'd have to double the latencies which means that the DDR3 equivalent would be 800MHz with timings of 10-12-12-36. Anything with the same clock and lower latencies should be faster, therefore my dad's memory at 800 and timings of 9-9-9-24 means that it has BETTER timings than my DDR2.
So that brings me back to the original question which has gotten somewhat obfuscated here:
"Why does the DDR3 system with comparatively better timings than its DDR2 counterpart, have such absolutely abysmal performance?" WORST CASE it seems like it should break even, yet it falls way short. The way I see it, there are 3 possibilities
1. The RAM itself is either just pathetic (which I wouldn't expect from G.Skill)
2. There is something about the motherboard that hinders performance (not likely since the memory controller is on the CPU)
3. The AMD on chip memory controller is doing an absolutely terrible job at getting the most out of the RAM.
Based on what I have been reading about AMD's Bulldozer architecture, I'm inclined to believe option 3. It seems like this new architecture seriously missed the mark in more ways than one. That is really sad because I have always liked AMD, there is something about the under dog. Unfortunately the numbers don't lie, apparently their new flagship architecture can't compete with an Intel architecture that is going on 5 years old! Before anybody says "but your 5 year old machine is overclocked," as fast as computers increase in performance, should any "new and improved architecture" 5 years later really have to be overclocked just to compete? Intel has chips out there that would mop the floor with my old OC'd Q6600 without breaking a sweat, and this is all AMD can offer up?
Ultimately though I guess it's all a moot point. I bought a DIY kit based on AMD without really researching to see how the Intel/AMD competition is going. My dad is thrilled because this machine is infinitely faster than the old Athlon XP that it replaced and I'm sure he'll be set for a computer for about the next decade or so. He's happy and that's all that really matters. I just thought I would toss this out there for informational purposes. My personal recommendation, as a long time AMD fan and 15 year veteran system builder is to go with Intel. You used to be able to justify a little performance hit just because the AMD price was right, but even that isn't so anymore.
FWIW, I opened up a new computer and work. It is an i5-2400. It's memory is only running at 667 and the timings are terrible and it scores WAY better on all benchmarks than the AMD. I suppose that answers the question, it's not the memory but rather the architecture. Ultimately it doesn't surprise me. The more I read about the bulldozer architecture the more it appears to be a flop.
Again, it's a moot point for me. My dad is happy with his new fast machine, it's just not likely as fast as a similarly priced Intel would be, but it does everything he needs it to.
It kinda makes me sad though. I've used AMD chips for years and have always been very satisfied with the performance/$. In fact the first personal machine I ever built that was Intel based has been my Core2Quad and the only reason it was intel based was that I wanted a specific CPU and motherboard combo to make a hack-a-mac with. I stopped tinkering with OSX years ago but ultimately it's been one of the better machines I've ever built. AMD used to be the performance / $ leader but right now they are so far behind the game I don't know that they'll ever catch up. IMHO, buying out ATI may be the worst thing they've ever done, but then again I've never liked ATI so maybe I'm a little biased.
First mistake was thinking WEI was a legitimate rating system
Agreed, but when a real benchmark suite produces equally abysmal results, it tends to add a little bit of legitimacy to the WEI score. Are you going to now claim a conspiracy theory and claim that all benchmarks are completely Intel biased?
How about we just let this one go and not waste anymore bandwidth over it.