andymcca wrote:
dhanson865 wrote:
The CPU and GPU are sharing that ram so if a program were using both close to equally contention could slow both down more than 20% each. Any time waiting on data means zero work.
Think traffic jam vs smoothly traveling cars on a highway. The number of cars doesn't change anywhere near the ratio of speed drop. The zero work state for the CPU or GPU is very similar to coming to a complete stop on a road. It takes time to get back up to full speed and get some real work going again and any further contention would make speeds sputter instead of accelerating smoothly.
I realize contention becomes much more of an issue with bus saturation, but I have trouble conceiving of a real world scenario where the overhead becomes significant compared to what would obviously be a bandwidth problem. The traffic analogy is problematic, because (if we call this a stop light), the length of time it takes for cars to get up to speed should be insignificant compared to the length of the green light (not the case for real cars). Makes me wonder if the controller is doing a poor job, and/or the graphics engine is a complete piece of junk (forcing cache-misses, forcing data synchronization in a way that causes contention without bandwidth problems). Then again, shared CPU/GPU memory channel is probably not an engine design consideration these days...
Still all seems very strange, as I would expect overhead costs to be reduced by the 20% as well (on a per-operation basis). This all assumes the timings are the same at 1333 and 1600.
5570 with DDR5 has memory bandwidth of 57.6 GB/s vs 520 GFLOPS
5570 with DDR3 has memory bandwidth of 28.8 GB/s vs 520 GFLOPS (and is held back by the slower memory)
A8 with DDR3 1333 has memory bandwidth of ~20 GB/s vs 480 GFLOPS on the GPU portion and it's sharing this memory bandwidth with the CPU so it's something less than 20GB/s if the CPU is busy.
That's a lot of stop signs / red lights. It's as if the light is red 50% of the time. The ram could be twice as fast and still not be as fast as the DDR5 used on a discrete card.
Rough numbers
DDR3 1333 20 GB/s
DDR3 1600 25 GB/s
DDR3 1866 30 GB/s
---DDR3 2000 32 GB/s
DDR3 2133 34 GB/s
Maybe contention isn't the best term to use. Maybe I should just say the GPU portion is starving due to lack of data coming through due to bandwidth limitations. Or maybe we should avoid the how it works analysis and just say it is throttling the GPU or maybe even that has auto connotations so I should just say it's holding it back.
But obviously price is whats pushing people to stick slower ram in a system that would easily take advantage of faster memory.
It'll be interesting to see the benches come Christmas buying guide time when prices have shifted and the 65W versions have shown up.