Why isn't ECC Ram the industry standard

mjz_5

2[H]4U
Joined
May 24, 2001
Messages
3,637
im curious why ECC ram doesn't become a standard. Prices will come down if it becomes the popular choice and wouldn't it just benefit everyone by using it?
 
Because.... it's usually not needed? The only time that I saw ECC even being actively recommended (and even highly encouraged) was with FreeNAS, and that's because of the ZFS file system (See this article). I'm sure it is the same at server-level where any downtime is a very bad thing.

At the personal computer level.... not so much.

FWIW, when I purchased the memory (Crucial 64GB Kit (4 x 16GB) DDR4-2133 ECC UDIMM), the cost was $368 before tax and shipping in June, 2016. It is now $592. I could not find the equivalent in non-ECC, but the next step up, DDR4-2400, was $592 for ECC, and $480 for non-ECC. $112 divided by four is $28. Last time I checked, $28 or $112 (depending on your perspective) is better than recovering a BLEEPED up RAID file system.
 
Last edited:
Because.... it's usually not needed? The only time that I saw ECC even being actively recommended (and even highly encouraged) was with FreeNAS, and that's because of the ZFS file system (See this article). I'm sure it is the same at server-level where any downtime is a very bad thing.

Currently using FreeNAS without ECC. My understanding is that it is useful when using the FreeNAS software RAID. I'm just using one disk.

My question is, what's the cheapest method of building an ECC computer?
 
Currently using FreeNAS without ECC. My understanding is that it is useful when using the FreeNAS software RAID. I'm just using one disk.

My question is, what's the cheapest method of building an ECC computer?

How do you define cheap?

MicroCenter currenetly has a great deal on the Gigabyte GA-X150M-PRO, only $78.00. Pair that with the Pentium G4560 for about $70.00 from various retailers, and you have you a great ECC workstation on the cheap! Depending on how much RAM you want, DDR4 ECC isn't that much more expensive than non-ECC
 
ecc also hurts performance a bit so there is three reasons for you
although the performance hit was more with registered ecc which was only ~1-5% and the hit from regular ecc is less than that
 
Last edited:
Currently using FreeNAS without ECC. My understanding is that it is useful when using the FreeNAS software RAID. I'm just using one disk.

My question is, what's the cheapest method of building an ECC computer?

To be fair, when I was first trying out FreeNAS, I was using a old computer junked from work and an old 2TB drive. It was using non-ECC RAM, and could not run Plex because it only has 8GB of memory. But, it accomplished it's purpose in that I learned to set up FreeNAS, set up shares, and whether or not I liked FreeNAS. I would rather find out in a small-scale test before spending a ton of money and finding out it doesn't fit my needs. You can guess from the elbow greese and $2,200 in hard drives, SuperMicro motherboard, 64GB of ECC memory, and a Fractal Design Node 804 case what that answer is. It's great to have what is the equivalent to a big honking hard drive. I started out with this in July:

Freenas Drive - Starting Out.png

And now I have this in February:

FreeNAS Drive 0 2017-02.png

Please note: I have multiple NTFS shares set up. Thus, the Used Space is for that share, while the Free Space is the total space available to all shares. While I am using 8x5TB drives, RAIDZ2 reduced the space available.

Now imagine the grief I would experience if I lost all that data. Sure, I make backups of those shares, so the blow would be softened, but it will still take a lot of time to recover. ECC memory in this scenario is that ounce of prevention to prevent a ton of pain.

Do I run ECC memory on my desktop computers? Nope, not needed. The big primary purpose of building the FreeNAS box was so that I could automate backups from my computers to a separate storage device. Secondary was a shared storage device. Having a Plex server is just gravy.

MicroCenter currenetly has a great deal on the Gigabyte GA-X150M-PRO, only $78.00. Pair that with the Pentium G4560 for about $70.00 from various retailers, and you have you a great ECC workstation on the cheap! Depending on how much RAM you want, DDR4 ECC isn't that much more expensive than non-ECC

In order to use ECC memory, you need to have ECC memory, a processor that supports ECC memory, and a motherboard that supports ECC memory. The Gigabyte GA-X150M-PRO certainly does qualify, although it is limited by six drives provided you also use the m.2 slot for a boot drive. (That's what I did).
 
In order to use ECC memory, you need to have ECC memory, a processor that supports ECC memory, and a motherboard that supports ECC memory. The Gigabyte GA-X150M-PRO certainly does qualify, although it is limited by six drives provided you also use the m.2 slot for a boot drive. (That's what I did).

Corvette asked about the cheapest way to get into ECC memory. If you are wanting more SATA connectors, you will have to be paying more for the motherboard, or add in a controller card. Just a quick check I found an inexpensive X99 board, the Asrock Extreme 3, currently on the Egg for $190, with a $40 MIR. However, to use ECC RAM, you would have to get a Xeon E5, which looks like it starts out with the Xeon E5-2603 V4 at $230. Not bad, just a total of $380 for the board and processor, but the previous combination I quoted would get you in for less than half of that. It all comes down to your needs. If you're building a NAS box, you could throw in the IBM M1015 controller card, available for around $100 from fleabay, and be rocking out a great NAS rig!
 
There are many reasons why ECC memory isn't the standard for the desktop.
  • ECC doesn't perform as well as non-ECC memory.
  • ECC memory costs more to produce than non-ECC memory.
  • ECC memory isn't as valuable to you as you think it is.
I've built and run many rigs over the years which have never BSOD'ed or had any stability problems to speak of. Even in cases where I've encountered problems, I can't think of any situation where the problem would have been prevented through the use of ECC memory. Alternatively, I've seen tons of servers running ECC that locked up, BSOD'ed or crashed. Its a good feature but its importance is overstated. Someone brought up RAID controllers and writing corrupted data back to it. This is one area where ECC is good, but having a battery backup on the controller is a far better preventative measure than ECC memory is. Most of the time, bad data being written back to the disk array comes from a system shutting down improperly, or randomly due to an application crash. In some cases I've been able to cause this problem through normal shut downs of the system. If you don't have an onboard battery backup on the controller you are almost guaranteed to have problems. Not having ECC memory doesn't guarantee you will. Both things are awesome to have but my experience tells me which is likely to cause problems more often.
 
From what I understand ECC came about due to the complexities and technological hurdles in the past with the manufacturing of memory. It was basically a way for memory to double check itself. Memory was also very costly. 100x more expensive than it is today.

I build workstations for a living. Depending on the application, ECC can be important in that some engineers want the entire data pipeline to remain accurate. But I have clients who are extremely educated in this area and a lot of times, I am told it's not a priority for them. Modern memory is very good. Software is also full of checks for accuracy. Modern workstation graphic cards also have ECC memory. So there is an abundance of built in accuracy. Also, if you frequent the forums of workstation builders who discuses this daily, it's not exactly a priory for a lot of those folks as well. But, for some, it is.

I have a client now that has 2 workstations and both do not have ECC memory. The older workstation was used to design and render a finished part on the 2018 or 2019 Jeep, the rear wheel assembly. This was a long 2 year process. Not only does his renders have to pass, sometimes the engineers at Fiat Chrysler would email or phone back that there were errors in the render but only very rarely. Sometimes this was simply due to different hardware configs but we never had issues with the math. Believe it or not, a budget can affect the design of a part. They literally look at the costs of bolts and fittings on these products. It's a huge story in of itself. I can't speak on what they use ( ECC ) but I know my clients workstation doesn't have ECC memory. His new workstation that has a 6950 and 128gb of ram and doesn't have it either and he is using the new workstation to build out a part for the Tesla model 3, a part on the Dash. To meet the model 3's demand, Tesla works with a lot of vendors. They outsource a lot of parts to many different companies. One would think everything is done in house but that's not the case.

I am almost positive many engineers these days do not use ECC. I think that even some pre-built workstations from Dell and HP do not have ECC memory as well.

Just my 2 cents
 
Any OEM that uses a Xeon CPU will probably have ECC. Aside from that, you don't really see it that often in workstations.
 
From what I understand ECC came about due to the complexities and technological hurdles in the past with the manufacturing of memory. It was basically a way for memory to double check itself. Memory was also very costly. 100x more expensive than it is today.

I build workstations for a living. Depending on the application, ECC can be important in that some engineers want the entire data pipeline to remain accurate. But I have clients who are extremely educated in this area and a lot of times, I am told it's not a priority for them. Modern memory is very good. Software is also full of checks for accuracy. Modern workstation graphic cards also have ECC memory. So there is an abundance of built in accuracy. Also, if you frequent the forums of workstation builders who discuses this daily, it's not exactly a priory for a lot of those folks as well. But, for some, it is.

I have a client now that has 2 workstations and both do not have ECC memory. The older workstation was used to design and render a finished part on the 2018 or 2019 Jeep, the rear wheel assembly. This was a long 2 year process. Not only does his renders have to pass, sometimes the engineers at Fiat Chrysler would email or phone back that there were errors in the render but only very rarely. Sometimes this was simply due to different hardware configs but we never had issues with the math. Believe it or not, a budget can affect the design of a part. They literally look at the costs of bolts and fittings on these products. It's a huge story in of itself. I can't speak on what they use ( ECC ) but I know my clients workstation doesn't have ECC memory. His new workstation that has a 6950 and 128gb of ram and doesn't have it either and he is using the new workstation to build out a part for the Tesla model 3, a part on the Dash. To meet the model 3's demand, Tesla works with a lot of vendors. They outsource a lot of parts to many different companies. One would think everything is done in house but that's not the case.

I am almost positive many engineers these days do not use ECC. I think that even some pre-built workstations from Dell and HP do not have ECC memory as well.

Just my 2 cents

Depends on the engineer and the task. In highly critical operations that require extremely accurate calculations, ECC is definitely preferred. Especially when you are dealing with high performance computing, server farms, supercomputers, etc. Also altitude plays a part, so if the calculations are being done at high altitudes, that becomes a factor as well.

The performance hit between ECC and standard RAM is mostly a myth. There is barely any difference in most real world applications between the two in regards to performance.

All that being said, for most consumers, they aren't doing anything absolutely critical, and most likely they are going to get faults from their storage more so than their ECC memory.
 
IMO reason is mostly intel with huge margins and memory fabs running red, but whatever.

Couple nitpicks with the "common wisdom" that comes up in many computer circles whenever ECC is mentioned:
-DDR3 proved that ECC still matters for those paying attention. Controlled hardware bit flips with software is insane.
-It is not called silent data corruption for fun, BSODs/crashes/etc are not silent.
-Many people confuse the register latency penalty with the (not always) ECC logic latency penalty - while often found together they are design concepts with completely different purposes.
-Worrying about the large penalty during an actual correction is irrelevant, it would be like noting that the 10lb seat belt contributed extra mass in a car collision.
 
Corvette asked about the cheapest way to get into ECC memory. If you are wanting more SATA connectors, you will have to be paying more for the motherboard, or add in a controller card. Just a quick check I found an inexpensive X99 board, the Asrock Extreme 3, currently on the Egg for $190, with a $40 MIR. However, to use ECC RAM, you would have to get a Xeon E5, which looks like it starts out with the Xeon E5-2603 V4 at $230. Not bad, just a total of $380 for the board and processor, but the previous combination I quoted would get you in for less than half of that. It all comes down to your needs. If you're building a NAS box, you could throw in the IBM M1015 controller card, available for around $100 from fleabay, and be rocking out a great NAS rig!

FWIW, I purchased the SuperMicro X11SAE-M Motherboard which currently lists at NewEgg for $190. (I got it on sale for $170). The specific reasons were that that it had a NVMe port (which I used for boot) and eight SATA ports (all used by 5TB hard drives). The machine is chugging away in the corner of the room. It is even hooked up to my older televisions's VGA port via Displayport -> VGA cable for the rare occasion I need to use the console mode using the on-board Displayport. The onboard sound is not even used.

It all depends on the specific use case and needs. If you are building a server, then data integrity and uptime is extremely important, thus the ECC memory. But, not on a gaming computer. Not on a computer that just brings up web pages.
 
If you are designing some sort of life-saving medical device or chemical, ECC is worth the little bump in cost to add one more level of certainty.
 
Back
Top