Mac Forums

Mac Forums (http://www.mac-forums.com/forums/)
-   Apple Desktops (http://www.mac-forums.com/forums/apple-desktops/)
-   -   Why Apple recommends matched pair memory (http://www.mac-forums.com/forums/apple-desktops/33075-why-apple-recommends-matched-pair-memory.html)

bigbadandugly 04-07-2006 10:20 PM

Why Apple recommends matched pair memory
 
Being an engineer, I needed to know why you Apple is recommending you install the SO-DIMMs in your mini in matched pairs. I found a plausible answer with supporting documentation from Intel and Kingston white papers here:

http://www.techspot.com/vb/topic32762.html

I has to do with the integrated Intel GMA950 video chip/chipset. In a nutshell, data is synchronously sent to the two module memory bank through two channels. In today's age on multi-GHz CPUs, performance limitations lay on the bus speed and the memory speed. Even 667 MHz DDR2 RAM, at the fast end as far as RAM goes, still provides a "bottleneck". However, a bigger "bottleneck" is the memory controller. To alleviate this performance problem, the memory controller uses two channels to transfer data to/from the memory. However, if you only have 1 SO-DIMM installed, the second channel is useless. The peak data bandwidth is calculated as follows:

memory speed x # of bytes transferred per channel x # of channels

or

memory MHz x 8 bytes x # of channels

So, with a single spec SO-DIMM (667 MHz), you get:

667 MHz x 8 x 1 = 5.3 GB/sec

With a pair of SO-DIMMs:

667 MHz x 8 x 2 = 10.6 GB/sec

So peak performance is doubled with a memory module in each slot! According to the whitepapers, the performance improvement can be anywhere from 7-25%.

So now lets look at the "matched pair" recommendation. I didn't see in the literature any reference to the performance impact with unmatched pairs, but logically one could assume that the dual channel memory controller would use both channels until one memory bank is full (obviously the 256 MB bank in a 256 MB + 512 MB unmatched pair), and then use only the single channel leading to the available memory. Hence you will be able to reach your theoretical peak bandwidth until you max out the lower capacity module, and then the peak would drop to half the value when you are relegated to a single channel. So the key to performance is to have two SO-DIMMs installed, even if they aren't matched.Two 256 MB SO-DIMMs will deliver much better peak performance than a single 512 MB SO-DIMM.

Note that you very rarely hit peak data transfer rates for a sustained period of time. This is illustrated by the 7-25% improvement stts from the Intel document. Given my usage, I believe I will be able to get away with an unmatched pair with very little perceptible performance impact.

The FSB is rated at 667 MHz, and so is the spec memory for the Mac mini. So if you use slower memory, your mini will still work, but performance won't be optimal because the speed of your memory will be the limiting factor, or "bottleneck".

BigBadAndUgly

deus_ex_machina 04-07-2006 11:47 PM

Thanks! :D

bfx 04-07-2006 11:48 PM

Just a bit more info -

Don't know which type Apple uses but in PC land there are two basic memory schemes for memory in multi cpu systems.

One is sometimes called pool memory because either cpu can use any available memory.

The other. more common in workstion and server setups, requires dedicated memory for each cpu.

The main benefit of matched sticks is they're less likely to cause crashes in systems using marginally designed and manfactured mother boards or chip sets. The timing and data transfer rate differences can cause problems the rest of the system can't cope with.

There might also be a small performance boost with matched sticks but, on a well desugned system, it probably wouldn't be noticeable.

Matched sticks also help in radically overclocked systems because at that point the other components, no matter how good, are on the ragged edge of crashing. In fact memory performance is uually the limiting factor in overclocking.

bfx

bigbadandugly 04-08-2006 01:10 PM

Quote:

Originally Posted by bfx
The main benefit of matched sticks is they're less likely to cause crashes in systems using marginally designed and manfactured mother boards or chip sets.

True, but since this is a Mac group, presmably we don't have to worry about marginal products! ;)


Quote:

Originally Posted by bfx
The timing and data transfer rate differences can cause problems the rest of the system can't cope with.

This is a very significant point of which I assumed was a given. When I was referencing matched pairs, I was implying matched capacity, assuming nobody would consider installing two modules operating at different speeds. Installing two modules of different speeds would have a dramatically negative impact on performance. The best case scenario, which it should do, would be if the memory controller operated both channels at the speed rating of the slower module to avoid race conditions. I wouldn't want to chance it, though, and would always recommend installing memory modules with the same speed rating, even if they are slower than the bus speed.

bfx 04-08-2006 01:56 PM

As I said - my post was just for a bit more info.

There are, it seems from reading the posts here and at other forums, several people that use both platforms.

bfx

baggss 04-08-2006 02:41 PM

This is also true for the multi-processor PPC based PoweMac line as well.


All times are GMT -4. The time now is 02:50 PM.

Powered by vBulletin
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.