Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

hedge222

macrumors newbie
Original poster
Jan 5, 2022
2
6
I purchased the 2020 iMAC stock with 8GB of RAM and upgraded to 32GB using Crucial brand memory on the hardware compatibility list. As I went through the process, I found a lot of information - some of it inaccurate. I thought I would share my experience and hopefully save someone else from a bit of back and forth. The Internet is filled with good information - unfortunately, some of it just isn't accurate or complete. Keep in mind, this only applies to the iMAC 2020 (mine is the 27" I5 / 10th generation) - other models may be unique.

From the factory, mine was configured with 8GB of RAM - two 4GB memory sticks:
One SODIMM in slot 2, the other in slot 4:
Slot 1: Channel A, DIMM 1
Slot 2: Channel A, DIMM 0 4GB Apple DIMM

Slot 3: Channel B, DIMM 1
Slot 4: Channel B, DIMM 0 4GB Apple DIMM

Initially, I added the two 16GB DIMMS - one in slot 2, the other in slot 3 (not sure if it is 100% required, but generally you should always install RAM in pairs):
Slot 1: Channel A, DIMM 1 16GB Crucial
Slot 2: Channel A, DIMM 0 4GB Apple DIMM

Slot 3: Channel B, DIMM 1 16GB Crucial
Slot 4: Channel B, DIMM 0 4GB Apple DIMM

Everything booted fine in the above configuration and reported 40GB as expected; however, I noticed the speed of the memory was reporting as 2133 vs 2667. Didn't take long to determine this was because not only the DIMM manufacturers were different, but the size was different as well for each channel (i.e. channel A and B had different sized DIMM's and the manufacturers were mixed). So, found an article on the Internet and changed the arrangement of the DIMM's:
Slot 1: Channel A, DIMM 1 4GB Apple DIMM
Slot 2: Channel A, DIMM 0 4GB Apple DIMM

Slot 3: Channel B, DIMM 1 16GB Crucial
Slot 4: Channel B, DIMM 0 16GB Crucial

The above configuration appeared to solve my issue - I was now reporting 40GB RAM @ 2667 MHZ. However, I later discovered that since the manufacturer of the DIMMs did not match (mixing and matching the two 4GB DIMM's from Apple and my new 16GB Crucial DIMM's), I would lose dual channel capability (the ability for simultaneous access to memory in both channels). Other than running benchmarks, there is nothing in the diagnostics (at least diagnostics built into the OS) that confirm dual channel support. My solution was to simply remove the two 4GB DIMM's from Apple and run only the two Crucial 16GB DIMM's:
Slot 1: Channel A, DIMM 1 Empty
Slot 2: Channel A, DIMM 0 16GB Crucial

Slot 3: Channel B, DIMM 1 Empty
Slot 4: Channel B, DIMM 0 16GB Crucial

With the above configuration, I have 32GB RAM reported @ 2667 MHZ. I should get full dual channel capabilities. This is the position the original ram from Apple occupied. The two chips are split across both channels to ensure dual channel support. You could also put one DIMM in Slot 1 and the other in Slot 3 - shouldn't make any difference.

In summary:
---------------
* If you mix DIMM manufacturer within the same channel (Slots 1/2_ChannelA or Slots 3/4_ChannelB), the speed of the memory is downgraded - even if both DIMM's are the correct specification. In my case, it was reporting as 2133MHZ vs 2667 MHZ even though all DIMM's were rated at 2667MHZ

* If you mix DIMM manufacturer across channels, you lose dual channel / simultaneous access across channels. Apple also specifically says that when using DIMM's of different capacity, you should try to minimize the capacity difference between channel A (slots 1/2) and channel B (slots 2/3). This is why my configuration where one 4GB Apple supplied DIMM and one 16GB Crucial DIMM in each channel (Slot 1: 16GB, Slot 2: 4GB, Slot 3: 16GB, Slot 4: 4GB) allowed for dual channel capability (DIMM's across channels were identical - Slot 1/3 16GB, Slot 2/4 4GB). Since this configuration resulted in mixed DIMM's in each channel, the speed reported incorrectly at 2133MHZ as noted in the previous bullet point above.

Final Comments:
-------------------
In the end, I simply discarded the stock 4GB chips from Apple, leaving only the 2x16GB Crucial memory sticks in place - 32GB of RAM is more than enough for my needs... 16GB would likely have been adequate as well. I have no idea as to what the real performance impact would have been had I left the stock Apple 4GB sticks in place. For example, what is the real world impact of having the memory downgraded to 2133MHZ? Also, what is the impact of losing simultaneous dual channel access capabilities? Some ran benchmarks and claimed there was a significant difference. Benchmarks aren't always relevant to real world applications. For me, the choice was simple - 32GB is more than I will ever need and tossing the stock 8GB was a no-brainer. I originally left them in only because I had the vacant slots and saw no reason to remove them. After taking the time to educate myself, I realized there was a potential trade off.

If you plan to upgrade your iMAC with 3rd party memory, make your life simple:
1) Plan on discarding the stock memory - ideally, order it with the minimum config (8GB) - discarding two 4GB sticks is not a big deal at all.
2) When you buy the memory, make sure you select memory from the hardware compatibility list. Even if the specs seem identical, you may encounter issues with other brands or part numbers. Stick to what is tested and verified. Even if other memory initially works, intermittent issues could surface later.
3) Buy the memory in kits (i.e. 2x16GB, 4x16GB, etc..). Someone in one of the forums bought 4 Crucial memory sticks from Amazon - all identical (or so he thought). When he received them, they were all the same specification, but the part numbers were different. The iMAC didn't like that - it saw these as being different hardware. Memory sticks should all be from the same manufacturer but also identical part numbers to avoid possible issues.
4) Always add memory in pairs - either 2 DIMM's or 4 DIMM's. If installing only two DIMM's, make sure you populate a slot from each channel - i.e. Slot 2 / DIMM0 (ChannelA), Slot 4 / DIMM0 (ChannelB). If you put them both in Slot 1/2, it will work fine, but you wont have dual channel.
5) Whenever possible, keep all of the DIMMs identical in size. As noted, manufacturer needs to be identical - down to the part number in some cases (two crucial DIMM's - even with the same specs - may be viewed differently if they aren't the same part number). Performance is better overall if the sizes across channels are identical.
5) More DIMMs are better. If you want 64GB of RAM, 4x16GB is better than 2x32GB - better overall performance. The trade off here might be scalability - keep that in mind when determining what to purchase.

Anyway, hope this helps someone out there!
 

wilberforce

macrumors 68030
Aug 15, 2020
2,930
3,207
SF Bay Area
5) Whenever possible, keep all of the DIMMs identical in size. As noted, manufacturer needs to be identical - down to the part number in some cases (two crucial DIMM's - even with the same specs - may be viewed differently if they aren't the same part number). Performance is better overall if the sizes across channels are identical.
I have been following/testing/advising on RAM upgrades for the 2020 5k iMac ever since it came out, and I commend you for your detailed and well-organized explanation and summary.

There is only one statement that is not 100% correct, bolded above. It is in fact possible to have two pairs of DIMMs from different manufacturers (or part numbers) without any penalty of speed/dual channel/performance, provided they are all the same size, and they are put in the slots in this order: AABB, where A = manufacturer/part A, B = manufacturer/part B, instead of the usual ABAB order. I and others have confirmed this.

This is quite important for people that have upgraded (say) to 2x16GB now, and later decide to upgrade further by adding another 2x16GB. The issue is that manufacturers are continually changing their part numbers, and it is often impossible to get the exact same part number a year later.

Essentially the "rules" for full speed and full dual channel using four DIMMS in the 2020 5k iMac are:

1. Part # in slot 1 must match part # in slot 2, else speed drops to 2133
2. Part # in slot 3 must match part # in slot 4, else speed drops to 2133
3. Amount of RAM in slots 1+2 (channel A) must equal amount of RAM in slots 3+4 (Channel B), else lose full dual channel.

It is impossible to satisfy all three rules if you have two pairs of different sizes (as you found out)
 
Last edited:

hedge222

macrumors newbie
Original poster
Jan 5, 2022
2
6
I have been following/testing/advising on RAM upgrades for the 2020 5k iMac ever since it came out, and I commend you for your detailed and well-organized explanation and summary.

There is only one statement that is not 100% correct, bolded above. It is in fact possible to have two pairs of DIMMs from different manufacturers (or part numbers) without any penalty of speed/dual channel/performance, provided they are all the same size, and they are put in the slots in this order: AABB, where A = manufacturer/part A, B = manufacturer/part B, instead of the usual ABAB order. I and others have confirmed this.

This is quite important for people that have upgraded (say) to 2x16GB now, and later decide to upgrade further by adding another 2x16GB. The issue is that manufacturers are continually changing their part numbers, and it is often impossible to get the exact same part number a year later.

Essentially the "rules" for full speed and full dual channel using four DIMMS in the 2020 5k iMac are:

1. Part # in slot 1 must match part # in slot 2, else speed drops to 2133
2. Part # in slot 3 must match part # in slot 4, else speed drops to 2133
3. Amount of RAM in slots 1+2 (channel A) must equal amount of RAM in slots 3+4 (Channel B), else lose full dual channel.

It is impossible to satisfy all three rules if you have two pairs of different sizes (as you found out)
Thanks for the additional info - I certainly appreciate you providing additional clarification. When I posted this I wasn't proclaiming myself an expert - I was trying to convey what I had learned based on what I gathered. So I am very appreciative of your contribution!
 
  • Like
Reactions: wilberforce

wilberforce

macrumors 68030
Aug 15, 2020
2,930
3,207
SF Bay Area
Thanks for the additional info - I certainly appreciate you providing additional clarification. When I posted this I wasn't proclaiming myself an expert - I was trying to convey what I had learned based on what I gathered. So I am very appreciative of your contribution!
Yup, most of us are not experts, but are just trying to pass on experience to help others, just as you have done. :)
 
  • Like
Reactions: Brachaci

CooperBox

macrumors 68000
There's some excellent advise here and I appreciate your experience.
I recently purchased a barely-used, intermediate model 3.3GHz iMac20,1 for an amazing 549€ (US$630) less than the current catalogue new tax-inclusive price here locally of 2249€ (US$2577). It's a truly amazing machine, and I certainly have no buyers remorse in not waiting for the (late 2022?) new 27" Silicon iMac which, when rushed into production (like most recent Macs) may well reveal teathing problems, and best avoided by waiting a short period for feed-back by early 'beta' adopters.
I too intended to upgrade the Ram, and note that the current price of 32Gb (2x16Gb) Crucial brand at 150€ (US$172) seems quite reasonable, especially considering that today the same RAM configured from Apple would cost a shameful 690€ (US$790).
At the moment my iMac performs everything I need from it, including photo and video editing with the installed 8Gb RAM, but plan to upgrade the memory to 32Gb probably in 1 years time when prices may have reduced even further.
Again, thanks for your above provided comments on memory compatibility.
 
Last edited:
  • Like
Reactions: wilberforce

wilberforce

macrumors 68030
Aug 15, 2020
2,930
3,207
SF Bay Area
There's some excellent advise here and I appreciate your experience.
I recently purchased a barely-used, intermediate model 3.3GHz iMac20,1 for an amazing 549€ (US$630) less than the current catalogue new tax-inclusive price here locally of 2249€ (US$2577). It's a truly amazing machine, and I certainly have no buyers remorse in not waiting for the (late 2022?) new 27" Silicon iMac which, when rushed into production (like most recent Macs) may well reveal teathing problems, and best avoided by waiting a short period for feed-back by early 'beta' adopters.
I too intended to upgrade the Ram, and note that the current price of 32Gb (2x16Gb) Crucial brand at 150€ (US$172) seems quite reasonable, especially considering that today the same RAM configured from Apple would cost a shameful 690€ (US$790).
At the moment my iMac performs everything I need from it, including photo and video editing with the installed 8Gb RAM, but plan to upgrade the memory to 32Gb probably in 1 years time when prices may have reduced even further.
Again, thanks for your above provided comments on memory compatibility.
Another low cost option is to buy 2x4GB OEM DIMMs on eBay that someone has taken out of their 2020 iMac to upgrade. Lots of these available, at least here (USA) for less than $30. You can then simply add them to your current DIMMs, provided you order them AABB, and get 16GB. This will be a big improvement over 8GB
 
Last edited:

TwoH

macrumors 6502
May 19, 2019
464
333
Hi all. Has anyone been having issues with the 2020 iMac when putting new RAM in? Two times, for two different machines now I've had it where I've swapped the RAM out, and now the machine will only boot up to an Alt-boot at most, where it will then shut off when going on either the internal, or an external drive.

Only way to fix it for me has been resetting the T2 chip - which takes quite a while.
 

PBG4 Dude

macrumors 601
Jul 6, 2007
4,361
4,644
I had no issue when I swapped my stock 8GB RAM with my Crucial upgrade RAM. First boot after RAM swap took extra long, but that‘s noted by Apple.
 

wilberforce

macrumors 68030
Aug 15, 2020
2,930
3,207
SF Bay Area
I had no issue when I swapped my stock 8GB RAM with my Crucial upgrade RAM. First boot after RAM swap took extra long, but that‘s noted by Apple.
Yes, it takes an extra 30 seconds to boot, with a black screen and no sign of life. If you don't wait long enough, you land up inadvertently turning it off, then get confused if it is on or off.
 

TwoH

macrumors 6502
May 19, 2019
464
333
Yes, it takes an extra 30 seconds to boot, with a black screen and no sign of life. If you don't wait long enough, you land up inadvertently turning it off, then get confused if it is on or off.
I’m pretty certain this is not the issue I’m facing.
The machines I’ve tried it on have happily turned on after a little bit of time, however they will turn themselves off once trying to boot into the internal, or an external drive - same with recovery.
Alt-booting will keep it turned on in that screen without issue.
And these are known-working, tested sticks.
 
  • Like
Reactions: wilberforce

pshufd

macrumors G4
Oct 24, 2013
10,145
14,572
New Hampshire
I just checked my iMacs. One has 16 GB Apple and 16 GB Crucial and they all report full speed.

The other has 4 GB Apple and 16 GB Crucial and they all report full speed at 1,333 Mhz, though the Crucial DIMMs are 1,600 Mhz (they were cheaper than 1,333). I am replacing the Apple DIMMs with a pair of A-Tech 8 GB DIMMs so will have 32 GB on both iMacs. I am not expecting any problems. Both systems seem to run fine.
 

VivienM

macrumors 6502
Jun 11, 2022
496
341
Toronto, ON
I have been following/testing/advising on RAM upgrades for the 2020 5k iMac ever since it came out, and I commend you for your detailed and well-organized explanation and summary.

There is only one statement that is not 100% correct, bolded above. It is in fact possible to have two pairs of DIMMs from different manufacturers (or part numbers) without any penalty of speed/dual channel/performance, provided they are all the same size, and they are put in the slots in this order: AABB, where A = manufacturer/part A, B = manufacturer/part B, instead of the usual ABAB order. I and others have confirmed this.

This is quite important for people that have upgraded (say) to 2x16GB now, and later decide to upgrade further by adding another 2x16GB. The issue is that manufacturers are continually changing their part numbers, and it is often impossible to get the exact same part number a year later.

Essentially the "rules" for full speed and full dual channel using four DIMMS in the 2020 5k iMac are:

1. Part # in slot 1 must match part # in slot 2, else speed drops to 2133
2. Part # in slot 3 must match part # in slot 4, else speed drops to 2133
3. Amount of RAM in slots 1+2 (channel A) must equal amount of RAM in slots 3+4 (Channel B), else lose full dual channel.

It is impossible to satisfy all three rules if you have two pairs of different sizes (as you found out)
So... I discovered exactly what you warned against - bought the "same" (or so I thought) Crucial kit 8-10 months later for my mid-2020 iMac, but the new kit identifies itself as "Manufacturer Micron" and a different part number whereas the old ones were Manufacturer 859B with another part number. (And here I bought this RAM now due to supply shortages on this kit, figured it would be easier to get the "matching" kit now... oops...)

I put them in ABAB, booted up, it said 2133MHz. Put them in AABB, I have 2666MHz. But is there a way to confirm I have full dual-channel? Based on your rules, I should, right? (All four are 32-gigger modules)
 

pshufd

macrumors G4
Oct 24, 2013
10,145
14,572
New Hampshire
So... I discovered exactly what you warned against - bought the "same" (or so I thought) Crucial kit 8-10 months later for my mid-2020 iMac, but the new kit identifies itself as "Manufacturer Micron" and a different part number whereas the old ones were Manufacturer 859B with another part number. (And here I bought this RAM now due to supply shortages on this kit, figured it would be easier to get the "matching" kit now... oops...)

I put them in ABAB, booted up, it said 2133MHz. Put them in AABB, I have 2666MHz. But is there a way to confirm I have full dual-channel? Based on your rules, I should, right? (All four are 32-gigger modules)

I did something similar with an i7-10700 PC build and had no problems. I bought 64 GB of Corsair Vengeance and bought another 64 GB eight months later. No problems at all. The i7-10700 is pretty close to the i7-10700K option in the 2020 iMac - the K just has higher boost speeds.
 

VivienM

macrumors 6502
Jun 11, 2022
496
341
Toronto, ON
I did something similar with an i7-10700 PC build and had no problems. I bought 64 GB of Corsair Vengeance and bought another 64 GB eight months later. No problems at all. The i7-10700 is pretty close to the i7-10700K option in the 2020 iMac - the K just has higher boost speeds.
Did your two kits identify themselves as the same manufacturer/part, though? The issue with my two Crucial kits here is that they identify themselves very differently, even though from a marketing/labelling standpoint, I believe they are the same part number. And it seems based on this thread that the memory controller in the mid-2020 iMac is actually comparing the reported SPD part number and will go down to 2133MHz if it sees a mismatch.

Interestingly, my iMac is a base model i5. Out of character purchase for me in many ways, but after the Mac Studio and the Studio Display came out, I bought... a base model refurb 27" Intel iMac, except with 10GbE and (now useless) 16GB of RAM (in hindsight I wish I had gotten a 8/512 instead of a 16/256 but when you want a refurb with 10GbE, you pick what is available and there was no 8/512 that day). Basically got a free Intel iMac for the price of a Studio Display :) Even if this thing has half the software lifecycle of the Mac Studio, since I paid 1/3rd as much for it, I think I'm still ahead... plus, someday, this mid-2020 iMac can join the MDD G4 I picked up a few months ago as an example of a "last/greatest Mac of a particular era". (Now, if only I had snatched up a Quadra 840av 15 years ago... and would be a good example of the last of 32-bit-compatible Intel iMacs?)

And I did that on a Windows machine too - bought some Mushkin RAM maybe 2 years later that had a different marketing part number, different heat spreader design, and identical specs/timing/etc and all 4 modules report the same part number in SPD. But with these Crucial kits, no such luck...
 

pshufd

macrumors G4
Oct 24, 2013
10,145
14,572
New Hampshire
Did your two kits identify themselves as the same manufacturer/part, though? The issue with my two Crucial kits here is that they identify themselves very differently, even though from a marketing/labelling standpoint, I believe they are the same part number. And it seems based on this thread that the memory controller in the mid-2020 iMac is actually comparing the reported SPD part number and will go down to 2133MHz if it sees a mismatch.

Interestingly, my iMac is a base model i5. Out of character purchase for me in many ways, but after the Mac Studio and the Studio Display came out, I bought... a base model refurb 27" Intel iMac, except with 10GbE and (now useless) 16GB of RAM (in hindsight I wish I had gotten a 8/512 instead of a 16/256 but when you want a refurb with 10GbE, you pick what is available and there was no 8/512 that day). Basically got a free Intel iMac for the price of a Studio Display :) Even if this thing has half the software lifecycle of the Mac Studio, since I paid 1/3rd as much for it, I think I'm still ahead... plus, someday, this mid-2020 iMac can join the MDD G4 I picked up a few months ago as an example of a "last/greatest Mac of a particular era". (Now, if only I had snatched up a Quadra 840av 15 years ago... and would be a good example of the last of 32-bit-compatible Intel iMacs?)

And I did that on a Windows machine too - bought some Mushkin RAM maybe 2 years later that had a different marketing part number, different heat spreader design, and identical specs/timing/etc and all 4 modules report the same part number in SPD. But with these Crucial kits, no such luck...

I'm pretty sure that they are the same. I just reordered the same part from Amazon.

I have used mismatched RAM on Windows PCs in the past with different timings and frequencies. I have a triple-channel RAM system and had DIMMs from various sources. I have mixed-speed RAM in on my 2010 iMac and it seems to work just fine.
 

wilberforce

macrumors 68030
Aug 15, 2020
2,930
3,207
SF Bay Area
So... I discovered exactly what you warned against - bought the "same" (or so I thought) Crucial kit 8-10 months later for my mid-2020 iMac, but the new kit identifies itself as "Manufacturer Micron" and a different part number whereas the old ones were Manufacturer 859B with another part number. (And here I bought this RAM now due to supply shortages on this kit, figured it would be easier to get the "matching" kit now... oops...)

I put them in ABAB, booted up, it said 2133MHz. Put them in AABB, I have 2666MHz. But is there a way to confirm I have full dual-channel? Based on your rules, I should, right? (All four are 32-gigger modules)
There is no way to "confirm" you have full dual channel that I know for a Mac, like you run an app and it says "you have full dual channel."
But the acid test is whether the memory performs to its full speed. If you run the Novabench RAM speed test it should give 28000 to 29000 MB/s or higher. If you are running single channel it will be much lower than this (like 20000 MB/s or less). If you run them at 2133MHz you will likely get around 25000 MB/s, I recall.

 
Last edited:

wilberforce

macrumors 68030
Aug 15, 2020
2,930
3,207
SF Bay Area
the memory controller in the mid-2020 iMac is actually comparing the reported SPD part number and will go down to 2133MHz if it sees a mismatch.
Yes, this is what appears to be going on. Moreover, I think it is a bug in the 2020 iMac firmware (only). What would make sense is to compare the part numbers in slot 1 vs 3, and in slot 2 vs 4 (which would validate matched modules in the two channels), but instead it is comparing the part numbers in slot 1 vs 2, and slot 3 vs 4, which makes no sense to me, and is not done on any other computer that I know.
 
Last edited:

VivienM

macrumors 6502
Jun 11, 2022
496
341
Toronto, ON
There is no way to "confirm" you have full dual channel that I know for a Mac, like you run an app and it says "you have full dual channel."
But the acid test is whether the memory performs to its full speed. If you run the Novabench RAM speed test it should give 28000 to 29000 MB/s or higher. If you are running single channel it will be much lower than this (like 20000 MB/s or less). If you run them at 2133MHz you will likely get around 25000 MB/s, I recall.

And I run Novabench and get... 26776. So... I guess we call that a win?
 
  • Like
Reactions: wilberforce

VivienM

macrumors 6502
Jun 11, 2022
496
341
Toronto, ON
Yes, this is what appears to be going on. Moreover, I think it is a bug in the 2020 iMac firmware (only). What would make sense is to compare the part numbers in slot 1 vs 3, and in slot 2 vs 4 (which would validate matched modules in the two channels), but instead it is comparing the part numbers in slot 1 vs 2, and slot 3 vs 4, which makes no sense to me, and is not done on any other computer that I know.
So in theory, if Apple was going to care about this, it's possible one day a random OS update could come with a random firmware update and suddenly the configuration that gave 2666MHz goes down to 2133 until you swap the memory modules around back to ABAB configuration?

That being said, I'm assuming Apple doesn't have any engineers working on discontinued Intel machines' firmware at this point...
 
  • Like
Reactions: wilberforce

VivienM

macrumors 6502
Jun 11, 2022
496
341
Toronto, ON
Yes, this is what appears to be going on. Moreover, I think it is a bug in the 2020 iMac firmware (only). What would make sense is to compare the part numbers in slot 1 vs 3, and in slot 2 vs 4 (which would validate matched modules in the two channels), but instead it is comparing the part numbers in slot 1 vs 2, and slot 3 vs 4, which makes no sense to me, and is not done on any other computer that I know.
I've been thinking about this, and I'm not so sure anymore.

I am trying to find some Intel data sheets, though it seems like I am mostly finding the ones for mobile processors so far - then again, I'm not sure LGA1200 Comet Lake had much of a life on non-Apple desktops, but I am noticing language like this: "H-Processor DDR4 2DPC is supported when channel is populated with the same UDIMM/SODIMM part number." (That comes from https://www.intel.com/content/www/u...datasheet-volume-1-of-2.html?wapkw=comet lake )

Isn't that exactly what the Apple firmware is doing? Slot 1 and slot 2 are the same channel (A), and it is expecting the same part number.
 
  • Love
Reactions: wilberforce

VivienM

macrumors 6502
Jun 11, 2022
496
341
Toronto, ON
I've been thinking about this, and I'm not so sure anymore.

I am trying to find some Intel data sheets, though it seems like I am mostly finding the ones for mobile processors so far - then again, I'm not sure LGA1200 Comet Lake had much of a life on non-Apple desktops, but I am noticing language like this: "H-Processor DDR4 2DPC is supported when channel is populated with the same UDIMM/SODIMM part number." (That comes from https://www.intel.com/content/www/us/en/content-details/615211/10th-generation-intel-core-processors-datasheet-volume-1-of-2.html?wapkw=comet lake )

Isn't that exactly what the Apple firmware is doing? Slot 1 and slot 2 are the same channel (A), and it is expecting the same part number.
Just to add to this, so this is the data sheet for the 11th gen "S" line processors. https://cdrdv2.intel.com/v1/dl/getContent/634648 So one very small generation ahead of the 10th-gen S line that's in the 2020 iMac. But it's a little cleaner than the one for the 10th gen (where it seems confusing where they are talking about the S processors, the H processors for laptops, etc).

If you go to the bottom of page 19, you see a reference to this "S-Processor Line (AIO SoDIMM)" which sounds like what we could be dealing with, and there are the following notes:
2. DDR4 2666MT/s or higher support is limited to SoDIMM raw cards versions A, C, E, D and G.
3. S-Processor DDR4 2DPC is supported when channel is populated with the same DIMM part number.
4. S-Processor SoDIMM DDR4 1DPC 6 Layer board supports 3200 Gear2, 2933 Gear1 and 2666 Gear 1
with Single Rank DIMMs and Dual Rank DIMMs.
5. S-Processor SoDIMM DDR4 2DPC is limited to 2133 MT/s due to Daisy Chain topology.

Half of this makes me think we shouldn't be seeing 2666 on a 4-SODIMM setup to begin with, but again, the reference to "channel is populated with the same part number" makes me think that what we're seeing is the correct behaviour. That's what we've both observed, isn't it? The memory controller seems happier (or at least more inclined to display 2666) when the same part number is in the same channel.

Also, note this, a few pages later on p. 23 (the 10th gen data sheet has the same language):
"Dual-Channel Symmetric Mode (Interleaved Mode)
Dual-Channel Symmetric mode, also known as interleaved mode, provides maximum
performance on real world applications. Addresses are ping-ponged between the
channels after each cache line (64 byte boundary). If there are two requests, and the
second request is to an address on the opposite channel from the first, that request can
be sent before data from the first request has returned. If two consecutive cache lines
are requested, both may be retrieved simultaneously, since they are ensured to be on
opposite channels. Use Dual-Channel Symmetric mode when both Channel A and
Channel B DIMM connectors are populated in any order, with the total amount of
memory in each channel being the same.
When both channels are populated with the same memory capacity and the boundary
between the dual channel zone and the single channel zone is the top of memory, IMC
operates completely in Dual-Channel Symmetric mode."

So this requires "both channels" to be populated with "the same memory capacity", which... is something that, if you have my configuration (two "mismatched" sets of 2x32 modules), you can easily have while also having "channel populated with the same part number".

This whole thing is widely outside my depth of expertise, but it's looking to me like the behaviour you described IS consistent with Intel's documentation for these memory controllers.
 

wilberforce

macrumors 68030
Aug 15, 2020
2,930
3,207
SF Bay Area
Excellent research! So it seems there is a good reason the way it is, not just a mistake. Out of my depth too.

What is still a bit confusing, is that for SODIMMs (which is what we have), DDR4 2DPC (= two DIMMs per channel, which is what we have) is apparently limited to 2133 MT/s ("SoDIMM DDR4 2DPC is limited to 2133 MT/s"), even when "channel is populated with the... same part number." But we are actually getting 2667 MT/s. Maybe I misread it.

Nevertheless, this is the first time I have seen a document giving a requirement that a "channel is populated with the... same part number."
 
Last edited:

VivienM

macrumors 6502
Jun 11, 2022
496
341
Toronto, ON
Excellent research! So it seems there is a good reason the way it is, not just a mistake. Out of my depth too.

What is still a bit confusing, is that for SODIMMs (which is what we have), DDR4 2DPC (= two DIMMs per channel, which is what we have) is apparently limited to 2133 MT/s ("SoDIMM DDR4 2DPC is limited to 2133 MT/s"), even when "channel is populated with the... same part number." But we are actually getting 2667 MT/s. Maybe I misread it.

Nevertheless, this is the first time I have seen a document giving a requirement that a "channel is populated with the... same part number."
I wonder if it's possible that there are some asterisks, perhaps Apple-centric asterisks. Asterisks which might only be on some more confidential Intel documents rather than public ones.

Apple advertises 128GB iMacs as "128GB of 2666MHz DDR4 memory" - here is one in the Canada refurb store right now (https://www.apple.com/ca/shop/produ...23bf630fbb94c208b5c3a03e2babdf6576618ef24d85c ). It would be weird if all the 2-SODIMM configurations were advertised as 2666MHz, while the 4-SODIMM factory configurations were 2133MHz. So I wonder if there's a special 'something' that allows avoiding that awkwardness.

Also worth noting, Apple has that weird design where all 4 slots are in that little pull out thingy which actually looks like it is almost on top of the CPU - maybe that gets you shorter traces or some other benefits beyond what a 'standard' 4-SODIMM design would do, and as a result they are able to run 2666MHz in some narrow circumstances. Get outside of those narrow circumstances and back to the published 2133MHz you go.

The other thing that occurred to me - this is an Intel machine. Duh. But that should mean you can boot up other OSes that could perhaps give you additional diagnostic information. There are certainly Windows utilities (CPU-Z, AIDA64, etc) that can potentially tell you stuff about the memory controller configuration (I say potentially because some BIOSes in my experience block access to some of that data. Lenovos are bad compared to Dells for example.). But... I'm not going to go and Boot Camp on a 256 gig drive. I have bootable Linux flash drives galore but have no idea how to access that kind of memory data there.

(Also, now that I googled, this language with populating channels with the same part numbers does show up in random spec sheets for Wintel machines.)
 
  • Like
Reactions: wilberforce
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.