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

TylerL

macrumors regular
Original poster
Jan 2, 2002
207
291
Intel's lack of ECC memory support on the Core line was a conscious effort to differentiate their Xeon line from "consumer" chips, as much or more so than simply a cost consideration.
With Intel out of the picture, would Apple make a point to move to ECC memory on Apple Silicon Macs?

The added assurance of stability can be a selling point for Pro workflows, and it's hard to argue that it wouldn't benefit The Rest Of Us at the same time.
Added cost has never held Apple back before... but what about the extra space required?
 
Intel's lack of ECC memory support on the Core line was a conscious effort to differentiate their Xeon line from "consumer" chips, as much or more so than simply a cost consideration.
With Intel out of the picture, would Apple make a point to move to ECC memory on Apple Silicon Macs?

The ECC memory support is on the dies of the Core series. It is just not "turned on". The Xeon E ( now marketed at Xeon W 1000 series) are the exact same die with ECC turned on.

Similar at the top end of the Core i9 series . In vast majority of cases, the same die primarily designed for the W (and SP) series of products with the ECC support turned off.


The primary issue with Apple Silicon is that the iPhones are the primary baseline design driver for the SoC design. With the sub 8GB RAM memory limits on iOS and iPad Pro devices .... I would be surprised if ECC made the basic cut for the mac SoC design.

Really depends on just how 'forked' the Mac Pro and iMac Pro ( and perhaps 27" iMac) SoC get from the rest of the solutions Apple puts together. For triple and quad digit RAM capacities ECC is more pragmatically useful. Exposure is higher. The iOS devices aren't going to go anywhere even remotely near that. Nor is most of the data there critically dependent on being single bit valuable. ( will anyone even see the vast majority of single bit media errors. versus a finance data point. )



The added assurance of stability can be a selling point for Pro workflows, and it's hard to argue that it wouldn't benefit The Rest Of Us at the same time.
Added cost has never held Apple back before... but what about the extra space required?

Given Apple's narrow trend lines on iOS and iPad OS device RAM implementation probably should be concerned about whether get DIMM support on the SoC , before start the push into the ECC space. For the laptops with soldered on RAM may not even have a DIMM. How far Apple is going to shovel that notion up the product line will be interesting. ( again the Desktops would be a natural 'break' from what they SoCs they probably are driving for laptops. But is Apple going to pound round pegs into square holes just to reuse same component into a broader set of the product line up. )
 
It's possible but unlikely in my opinion.

If you look at other OEM's who have begun to ship Ryzen based systems (which has ECC enabled on all chips) very few of them have added ECC memory to their configuration options and of those that did it was always on the highest end models intended for workstation use (covered by the iMac Pro and Mac Pro in Apples lineup that already have ECC memory today).

But there is the 16" MacBook Pro. Apple has gone pretty hard with its marketing portraying this system in particular for professional music, photo and video users with its 64GB of RAM & 8TB SSD options, DCI-P3 colour 10-bit IPS display with multiple refresh rates that adhere to common film and video frame rates and so forth.

This is largely the same market they target with the iMac Pro and Mac Pro so I think if any system would gain ECC memory it would be the MacBook Pro 16" while the rest of the lineup (Mac Mini, MacBook Air, MacBook Pro 13" etc) I don't think will gain ECC memory support.

But just my opinion :)
 
It's possible but unlikely in my opinion.

If you look at other OEM's who have begun to ship Ryzen based systems (which has ECC enabled on all chips) very few of them have added ECC memory to their configuration options and of those that did it was always on the highest end models intended for workstation use (covered by the iMac Pro and Mac Pro in Apples lineup that already have ECC memory today).

ECC is in Ryzen but AMD hasn't really been crossing all the t's and dotting all the i's. It is there as much as a 'feature checkbox' tool against those 'bad' Intel alternatives that AMD also knows that most of the users are going to want to skip. ( nobody will find the quirks if they don't use the feature).

For the systems where Apple is the only entity making a choice about the RAM ( because they are soldering it to the SoC package or the logic board) and they aren't choosing ECC ... then how motivated are they going to be to do a great job implementing it in the SoCs for those systems . Lots of i's to dot and t's to cross that never gets used..... probably isn't going to get a high R&D resource allocation.



But there is the 16" MacBook Pro. .... ....


This is largely the same market they target with the iMac Pro and Mac Pro so I think if any system would gain ECC memory it would be the MacBook Pro 16" while the rest of the lineup (Mac Mini, MacBook Air, MacBook Pro 13" etc) I don't think will gain ECC memory support.

There is a huge gulf between where the MBP 16 " maximizes out on capacity ( 64GB ) and where those others do ( 256GB and 1,500 GB. ) . Again, is Apple is even going to go as high as 1,500 GB capacity ( or higher) with their SoC implementation ? If they just say that DDR5 era density memory up to 256GB is "good enough" they may just 'punt' on EEC and multiple ranked DIMM banks. ( they are tossing booting into other operating systems natively down the drain too .... so not out to make everyone at the edge case side of the spectrum happy. )

MBP 16" isn't as much of a factor as whether Apple wants to move this down into the iMac (and maybe perhaps the Mini ).
 
Last edited:
ECC is in Ryzen but AMD hasn't really been crossing all the t's and dotting all the i's. It is there as much as a 'feature checkbox' tool against those 'bad' Intel alternatives that AMD also knows that most of the users are going to want to skip. ( nobody will find the quirks if they don't use the feature).

For the systems where Apple is the only entity making a choice about the RAM ( because they are soldering it to the SoC package or the logic board) and they aren't choosing ECC ... then how motivated are they going to be to do a great job implementing it in the SoCs for those systems . Lots of i's to dot and t's to cross that never gets used..... probably isn't going to get a high R&D resource allocation.





There is a huge gulf between where the MBP 16 " maximizes out on capacity ( 64GB ) and where those others do ( 256GB and 1,500 GB. ) . Again, is Apple is even going to go as high as 1,500 GB capacity ( or higher) with their SoC implementation ? If they just say that DDR5 era density memory up to 256GB is "good enough" they may just 'punt' on EEC and multiple ranked DIMM banks. ( they are tossing booting into other operating systems natively down the drain too .... so not out to make everyone at the edge case side of the spectrum happy. )

MBP 16" isn't as much of a factor as whether Apple wants to move this down into the iMac (and maybe perhaps the Mini ).

Actually the ECC implementation on Ryzen works perfectly and has no issues whatsoever. I have over 50 of them deployed in servers and did my due diligence in this regard :)

The issue is motherboard vendors. Some boards do not contain the 72-bit BUS required so only non-ECC works in those boards. Some have the full 72-bits but did not add ECC support to their BIOS. Others did add support but didn't test it creating many compatibility problems.

But know this, when a motherboard vendor says 100% x y or z ECC dimm will work, it will work. The problems are not in the memory controller of the CPU's, like I say over 50 of the Ryzen 2xxx and 3xxx in production right now with 64-128GB of RAM without problem, but always I used qualified motherboards that have support for ECC memory with QVL's.

Also it doesn't matter how much memory a system has regarding if ECC is worth it or not. We're talking about data integrity and specifically how important the integrity of someone's data is. You can configure the Mac Pro or iMac with 32GB or less memory and still get ECC because it's not about quantity it's about importance.

The reason I brought up that the 16" MacBook Pro can be configured with 64GB of memory was to illustrate where Apple is marketing it, professional high end usage which is the same realm ECC memory is commonly used to protect data which is often worth many many times more than the hardware it exists on.
 
  • Like
Reactions: Project Alice
If I understand it correctly, DDR5 has ECC included by default. LPDDR5 seems to have it optional, but I have no idea if it’s actually used anywhere. Anyway, given the increasing speed and density of RAM, ECC will quickly become a must.
 
If I understand it correctly, DDR5 has ECC included by default.

Yes and no.

"...All the while, there are several smaller changes to either support these goals or to simplify certain aspects of the ecosystem, such as on-DIMM voltage regulators as well as on-die ECC. ..."

"...On-die error correction code (ECC)3 and error check and scrub (ECS), which were first to be adopted in DDR5, also allow for more reliable technology node scaling by correcting single bit errors internally. Therefore, it is expected to contribute to further cost reduction in the future. ECS records the DRAM defects and provides the error counts to the host, thereby increasing transparency and enhancing the reliability, availability, and serviceability (RAS) function of the server system. ..."
https://news.skhynix.com/why-ddr5-is-the-industrys-powerful-next-gen-memory/


This falls into the same "slim shady' zone as to why Apple punts on doing user data ECC checking in APFS. They may skip implementing it for the same "less work for us to do a half implementation" reasons. There is ECC as long as the data is on the die ( not even the chip or DIMM ; probably going to get die stacking in the chips within numerous Apple system implementations ). If the flaw occurs during the transition from the RAM die to the CPU then, no they don't.
There is still an optionally wider data path ( 80 bits instead of 64 ) so there will still be ECC and non-ECC DIMMs with DDR5 where the data path also has optional pragmatic coverage.

Apple hand waves that APFS doesn't need ECC on user data because the storage drive has ECC. ( in particular their SSD which is the nominal default place to store data in its encrypted state. ). That's likely to "happen to work" fairly well to average data movement. If you have long term bit critical data, then it is substantially less than what something like ZFS or some other alternatives offer (end to end coverage). Power loss protection on their SSDs in plug-in desktops... not really.


I would be completely unsurprised if Apple rolls out the same exact hand waving about why they didn't have to put in the work for their top end "Pro" SoC. "It is protected most of the time... that's good enough for iPhones so it is good enough for us. "


LPDDR5 seems to have it optional, but I have no idea if it’s actually used anywhere. Anyway, given the increasing speed and density of RAM, ECC will quickly become a must.

16 less pins (and traces ) per DIMM over 4-8 DIMMs is decent amount of avoided work that many system implementors are going to avoid to scrape out incrementally better margins. More of the basic ECC infrastructure is a ubiquitous basic cost so hopefully it will get more widespread. At least in the mid range systems. The stuff at the lower end of the "race to the bottom" will probably still skimp.
 
Actually the ECC implementation on Ryzen works perfectly and has no issues whatsoever. ...

The issue is motherboard vendors. Some boards do not contain the 72-bit BUS required so only non-ECC works in those boards. Some have the full 72-bits but did not add ECC support to their BIOS. Others did add support but didn't test it creating many compatibility problems.

But know this, when a motherboard vendor says 100% x y or z ECC dimm will work, it will work.

Leaving details up to the motherboard vendors is part not doing the i-dotting and t-crossing. If the baseline reference BIOS/UEFI from AMD has the support in it then it would be more of the case of the vendors suppressing it than having to add it in. Same with the basic reference logic board designs provided.

Also it doesn't matter how much memory a system has regarding if ECC is worth it or not. We're talking about data integrity and specifically how important the integrity of someone's data is. You can configure the Mac Pro or iMac with 32GB or less memory and still get ECC because it's not about quantity it's about importance.

Pragmatically for most folks it does matter. Many will say they are at no significant risk because they have a low profile. ( it will likely happen to someone else , i don't have to wear a seat belt. "I'm just a little old lady from Pasadena who only drives a 0.2 miles to the grocery store once a week". ) Triple and quad digit GB capacities are where that stance is substantively more 'thin'.


The reason I brought up that the 16" MacBook Pro can be configured with 64GB of memory was to illustrate where Apple is marketing it, professional high end usage which is the same realm ECC memory is commonly used to protect data which is often worth many many times more than the hardware it exists on.

Apple is luring more "Mac Pro user class from 10-20 years ago " folks into MBP 16". But they also are selling a hefty chunk of MBP 16" to folks who just want a larger screen option and have the disposable income and/or expense account (to spend someone else's money). 64GB used to also take more chips ( and if go back far enough more DIMMs) so had a higher physical risk profile. ( at high enough data density on die that goes back up when it gets to point easier to perturb the data because structures so small. ) . The non-risk adverse folks have expanded the "i'm too small a capacity zone" over time. 64GB should in the coverage , but most folks in MBP 16" systems aren't doing 64GB.

This is one of those zones where if there is on-die ECC ( DDR5) Apple may side step it as "good enough". Better than the 'nothing' the "bigger screen" user is looking for and incrementally better for the data integrity user.
 
Tbh, there's no real tangiable benefit in using ECC in consumer level hardware. The only time it ever becomes advisable IMO is when there's software RAID/something similar (e.g. ZFS, etc) being used, and unless I'm mistaken, all current Apple devices use some form of hardware raid based in the T2 chip.
 
Tbh, there's no real tangiable benefit in using ECC in consumer level hardware. The only time it ever becomes advisable IMO is when there's software RAID/something similar (e.g. ZFS, etc) being used,

Software RAID doesn't include the errors that ECC tends to find. That is fundamentally the wrong root cause.
ZFS doesn't cause ECC problems; it fixes them.

What you'll find is that folk who care more about their data integrity will use ZFS because it does provide end-to-end protection. The consumer level hardware issue is that folks just don't care about their data value at the individual bit level. The errors don't matter (or matter enough to spend money on it) . It isn't that they don't occur.

There is a "rule of thumb" that folks should use ECC when opting into ZFS because no ECC on the RAM basically short-circuits the protections that ZFS basically provides while the data is resting/transitioning in RAM. Spent extra money to protect the data but go Scrooge McDuck when it hits the RAM.



and unless I'm mistaken, all current Apple devices use some form of hardware raid based in the T2 chip.

All of the modern, contemporary storage drives use ECC at some level internally. HDD, SSDs. The T2 isn't 'special' in that context at all. The data densities of the HDD push the edge where need to keep up with track integrity. NAND in SSDs tend to loose data bits in usage over time. The SSD controller in the T2 isn't remarkable on the ECC dimension. Any decent one is doing it. All the ones that store the data encrypted 'at rest' basically have to if going to be competently implemented.
 
Actually the ECC implementation on Ryzen works perfectly and has no issues whatsoever. I have over 50 of them deployed in servers and did my due diligence in this regard :)
How does Ryzen handle two bit errors, does it simply report them or does it crash the system? What OSs are you on?
 
If I understand it correctly, DDR5 has ECC included by default. LPDDR5 seems to have it optional, but I have no idea if it’s actually used anywhere. Anyway, given the increasing speed and density of RAM, ECC will quickly become a must.
You understand half correctly.

DDR5 has ECC inside of the chips so that it can get away with even smaller DRAM cells that are so unreliable that they require ECC to meet the reliability of previous generation DRAM.

What we actually want (if necessary: in addition), and what "ECC RAM" always meant for the last couple of decades, is end-to-end ECC that also covers the transmission from and to RAM!
 
there's no real tangiable benefit in using ECC in consumer level hardware
Yes, there is. That random crash you experienced? Might have been a RAM error, but you don't know because you don't have ECC. And people use online banking on all devices from a phone up. Which is why ECC should be everywhere, there is no real excuse to invest in things like higher quality screens all the time while not caring about data integrity. This horse has been beaten to death in some of the Mac Pro threads. If you don't care about your data, fine, but many people do, so please don't say that ECC shouldn't be used in consumer level hardware. It should be ubiquitous.
 
Since there will probably no ECC Ram for AppleSilicon in the foreseeable future, the real Apple fans will of course talk down the sense of ECC Ram.
That's usually the case with useful features that you don't get from Apple.

It is always good to have ECC-Ram.
 
Since there will probably no ECC Ram for AppleSilicon in the foreseeable future, the real Apple fans will of course talk down the sense of ECC Ram.
That's usually the case with useful features that you don't get from Apple.

It is always good to have ECC-Ram.

I would love to have ECC RAM in my Mac, but not at the cost of reduced performance/power efficiency or increased price.
 
I would love to have ECC RAM in my Mac, but not at the cost of reduced performance/power efficiency or increased price.
My problem with ECC is cost, it's just not enough benefit to bother unless the computer is in a harsh environment. (like space)

And you guys know I'm definitely not an Apple apologist! I only have 2 servers in the building with ECC and one at home, and I don't see any crashes less on those than servers without ECC. (virtually none)
 
My problem with ECC is cost,
I don't understand that argument. ECC-Ram does not cost much more. The additional costs that can arise on the chipset side or the motherboard are usually caused intentionally by Intel and depend on the respective platform. On the old platform, for example, you could run a Pentium with ECC-Ram on C246 Chipset. Especially for servers at home, the Pentium was often enough.Together with a board like the C246-WU4 and an efficient power supply, you could build extremely power efficient systems.
 
  • Like
Reactions: Basic75
I would love to have ECC RAM in my Mac, but not at the cost of reduced performance/power efficiency or increased price.
You're literally saying that speed is more important than correctness. To me that's an insane point of view.
 
You're literally saying that speed is more important than correctness. To me that's an insane point of view.

I am under the impression that we are not yet at a point where RAM errors are as ubiquitous to actually cause serious harm. For my working computer, I am fine with experiencing a crash once in a few months or weeks. Where error correction is much more important is for persistent data.

So, no, I don't think it's insane when you consider the use case. For a server running a production database it's a whole different matter of course.
 
Last edited:
I don't understand that argument. ECC-Ram does not cost much more.
No, but the server does.
The additional costs that can arise on the chipset side or the motherboard are usually caused intentionally by Intel and depend on the respective platform.
It is what it is. :) They're in the business to make money, and I'm in the business to get the processing done at the best cost.

On the old platform, for example, you could run a Pentium with ECC-Ram on C246 Chipset. Especially for servers at home, the Pentium was often enough.Together with a board like the C246-WU4 and an efficient power supply, you could build extremely power efficient systems.
Those days are gone, you need high end hardware to use ECC in intel land, which is what most of the machines here run.

While someone could make consumer level hardware that used ECC at a reasonable price, I just don't see it happening. Even a little bit of added cost just doesn't justify it.
 
I am under the impression that we are not yet at a point where RAM errors are as ubiquitous to actually cause serious harm.
We do know that RAM errors happen, and that they cause random crashes and data corruption. Another benefit of ECC RAM is that you can get an advance warning before it is failing, i.e. while it is starting to fail and producing a higher rate of errors.
For my working computer, I am fine with experiencing a crash once in a few months or weeks.
And what if it isn't a crash but silent data corruption? Why is that only bad if it's on a server? A businessman's Excel sheet, a software developer's source code, your Amazon order and online banking transaction, are they not important?
Where error correction is much more important is for persistent data.
The same persistent data that passes through RAM at least once on its way to and from persistent storage? ECC is not rocket science. We are investing so much into nicer screens, faster drives, faster everything actually, why not invest just a little bit to make your system more reliable, too?
 
We are investing so much into nicer screens, faster drives, faster everything actually, why not invest just a little bit to make your system more reliable, too?
Probably because we’re investing in faster RAM too?
 
Of course standard RAM can have errors, but imo, for non crucial stuff where lifes or other extremely important things depend on it, standard RAM reliability is more than often good enough.
Of course a 100% lack of errors is nice for everyone too, but many aim for utmost speed, which is a nice thing too.

People also aim for the thinnest laptops or smartphones, while actually thicker devices are potentially offering nice(r) things like better cooling/higher Clock speed, longer life times, etc. except for the bragging rights that mine is thinner than yours.

The fastest cars usually aren’t the safest either and vice versa, yet both have their place
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.