Optimal RAM configuration: one large DIMM vs multiple smaller DIMMS?
I have always been told there were performance advantages in using multiple smaller DIMMS vs a single larger DIMM (as the combined bandwidth of all the motherboard's RAM slots would be used).
My boss just told me "this isn't much of an issue anymore" and to just use a single larger RAM module when upgrading our office PCs (e.g. 1 x 8 GB instead of 4 x 2 GB).
I suppose one advantage of buying the larger RAM modules (4 GB or 8 GB) and leaving other RAM slots unusued is that it is more cost effective if the memory is to be upgraded again - but it still leaves me wondering about the performance with all the empty RAM slots in the meantime.
Is it true that there are no noticeable performance benefits to using multiple smaller RAM modules spread across all of a motherboard's RAM slots compared to using a larger RAM module in just one slot (and leaving the rest empty)?
Check the manual for the motherboard before upgrading your RAM or building a system. Dual channel operation, triple channel memory operation, and even quad channel operation may be supported. If you only have one RAM module in only one slot you will NOT get dual channel operation (when supported). For triple channel you must install 3 modules. Quad I do not know, so I do not know if it will also work in dual when there is only 2.
Running in dual channel teams up the two RAM modules, and the increase of memory throughput is large. One platform I have checked with a specific software to test memory speed showed an increase from single to dual from 8 to 11 (whatever the math is on that), again this is with a memory I/O specific benchmark.
Increasing the speed of any single item on a computer does not necessarily reflect a whole lot on the actual visual or perceived performance. Even benchmarks might not show a lot of increase, but they will always show some performance increase when working in dual channel. (RAM is not usually bottlenecking operations).
For the most part the average computer user is not going to notice the speed, even when my own motherboard was not running dual memory I had to test the memory to tell.
Change any single component in a computer to one that is "some degree faster" and certain functions, programs or operations will be affected by that change by varying amounts. The data that an OS is storing in the caches, operations that shift huge hunks of data from one RAM location to another. Other RAM intensive operations.
Operations where the memory data comes-from or goes-to the slower hard disk, the disk being ~100 times slower, you'll never know :-)
Conclusion:
Speed? Yes. Difference? Yes. Overall computer performance? A wee bit. It is up to the user or the builder to determine if any additional funds or trouble are worth the extra performance
More Stuff:
At times when people have problems with memory not POSTing, not testing correct, or not working with the timings that it is set for, it is running in Dual and the extra speed and combining that made it more picky.
Dual channel makes testing for bad RAM module extra fun, when the operation is on the edge, and teaming it up with a second one pushes the speed, and combines, and the memory wont work stable at that speed or timing (or voltage). Remember the situations were people will say 1 memory module works by itself but 2 together and it has problems.
It is completely lazy/easy to toss in one big fat module and just have it "work", less items in general, less likely to have any issues.
It is pure performance to make sure you use all the "features" of whatever performance enhancing tricks (dual) they are applying. The Motherboard manual will almost always indicate what it supports and which slots to use.
It can be a better upgrade path $$$ to have big memory modules in fewer slots, then just keep adding more later, versus filling the slots and having to toss the small ones to upgrade to more RAM. But with today's memory running at the speed it does, the direct CPU(die) accesses, and the extreme speeds they are pushing it. If you buy one module today, with plans to upgrade, you miss out on putting in a tested and designed to work together TEAM of memory modules. A year later it can be hard to find a matching module that will work perfect as a team. You can team up a donkey and a thoroughbred on the same cart, it just might cause more problems than getting a SET of the same brand the same speed, the same manufacturing process, at the same time.
Related link: Intel's "Single- and Multichannel Memory Modes" with pictures
The recommendation is to get your dual (triple or quad) memory going when building/testing the computer and when you still have product return privileges. But it is a recommendation not a requirement.
My boss just told me "this isn't much of an issue anymore"
He's basically right. Today's PCs are so stupidly powerful that your average office workload (emails, word, excel, messaging, internet) will see zero real-world benefit in using dual-channel configuration over single.
For what it's worth the two things that have made a tangible difference to my own system performance (for office-type workloads) are:
Enough RAM in order to avoid disk swapping with multiple apps open (seems 8GB on a 64-bit OS is the minimum these days)
SSD hard drive
For most office tasks, your boss is correct.
For using a high resource program like Blender 3D, you need as much extra boost of performance as possible, and using 4 Gigs in four DIMM slots for 16 Gigs total, has dual channel operation twice (assuming the motherboard supports this), which adds a significant amount of available resource when needed. If you try to put x amount of water through one tube or four, which way will the water flow faster and more freely. That's the idea. And if I have 8 cores rendering a complex image, I need all the speed and power I can get.
It depends upon what you do with your computer.
I have some experimental information that confirms that there is at least one case where smaller DIMMs filling all slots outperforms an equal amount of memory in large DIMMs in fewer slots. Indeed it outperforms even larger amounts of memory. The difference in elapsed times is large. For example I have elapsed times of 55 seconds versus 105 seconds.
First I demonstrated that the CPU is a constant factor. A CPU-bound application drag race between a unit with 6 DIMMs of 8GB and 2 empty slots (total 48GB) and a unit with 8 DIMMs of 2GB and zero empty slots (total 16GB) shows either unit can finish first with seemingly equal likelihood.
I switched to a real-world application that is both CPU-intensive and memory-IO-intensive. This application has a trivial amount of disk access. Memory is adequate in both units as evidenced by zero swap activity. In this case the unit with 6 DIMMs of 8GB and 2 empty slots (total 48GB) is slower than a unit with 8 DIMMs of 2GB and zero empty slots (total 16GB). Likewise 2 DIMMs of 8GB and 6 empty slots (total 16GB) is slower than a unit with 8 DIMMs of 2GB and zero empty slots (total 16GB). Likewise 6 DIMMs of 8GB and 2 DIMMs of 2GB (total 52GB) is slower than a unit with 8 DIMMs of 2GB and zero empty slots (total 16GB).
For my motherboards (Dell PowerEdge 1950 Generation III) it seems that identically populated slots perform better. The users manual has this table.
Channel 0 contains DIMM_1, DIMM_5.
Channel 1 contains DIMM _2, DIMM_6.
Channel 2 contains DIMM_3, DIMM_7.
Channel 3 contains DIMM _4, DIMM _8.
"DIMM sockets must be populated by lowest number first."
From this you can see that 4 DIMMs will spread IO over 4 channels which is optimal. Eight (8) DIMMs would do likewise. If you have 2 very large DIMMs you are economizing if the unit needs to be upgraded again but until then you are not using all the channels. The manual also says this: "the total number of memory modules in the configuration must total two, four, or eight. For best system performance, all four, or eight memory modules should be identical in size". So refer to the manual for your system.
Of course if your real-world applications are intensive in other aspects such as memory quantity (swapping), database access, disk access, internet access, or CPU use, then you might care about these other processes more. The word "bottleneck" makes not the right analogy because these processes can have a cumulative effect on elapsed times.
The bottom line is that the size of the DIMM can matter to a large extent if it means large DIMMs fill fewer slots. It is better to populate all the slots. Failing to do so, the elapsed time increased 91% (55 versus 105 seconds) in my experiment.