ECC memory vs Non-ECC memory - Poll!

Here, here. Preferably AMD in my case. Just so I can say “screw you Intel on limited ECC memory support for consumers”.

In this case, it’s down right lack of thought. A small business can generally not afford to loose hours or days of work.

Even business desktops and workstations should have ECC memory. I mean, lots of stuff goes THROUGH the desktops / workstations before ending up on a server.

Image you plan on changing a value from 0 to 1 for a server application. But, good old memory errors flip a bit so it is now 9. (Aka it flipped bit 0b1000.) Then what if that was something that cost money? Buying 1 truck for business, and now buying 9. Oops.


My "complaint" about lack of ECC memory is partly due to 2 things:
  • Newer memory tends to be faster, so potentially more error prone
  • Newer memory tends to be smaller transistor size, so again more prone to errors

Now DDR5 does now take both those into consideration, with their On-Die ECC. (Which is not the same as the ECC we normally see for memory.)

DDR5 even appears to allow 80 bit memory, so 16 bits of ECC instead of 8 bits previously. I’d like to see that more in use, even if it was only server grade hardware.


Of course I now know iX's evil plan. They want to release a cheaper TrueNAS Mini without ECC memory support. And this poll is gauging how well they will sell. :-)
4 Likes

This is normal for DDR5 memory as it no longer uses a single 64 bit channel for data but two 32 bit channels per DIMM. Each channel needs its separate ECC chip hence the need for two 8 bit ECC chips, total 80 bits. The added cost of e2e ECC doubled with the new memory generation.

Yes, but only because it was the easiest way to get compatibility with my platform of choice.

Not quite. Intel’s CPUs do indeed support ECC, but they require a chipset that also supports ECC. Of course, only Intel makes the chipsets, and none of the consumer-grade chipsets support ECC. Only server-grade (for Xeon CPUs) and special industrial embedded chipsets like the W680 do, and of course you’re not going to find a W680 on a consumer-class board; instead, you’ll have to get a special industrial board that cost much, much more than your CPU, and probably more than any other part in the system.

For AMD, the situation is much better, at least for the AM4 socket stuff I ended up using for my build. There, the chipsets support ECC just fine, but you have to make sure the motherboard maker actually enabled support. Generally, they do, but you should check to make sure. Asrock and ASUS generally seem to support it, but MSI and Gigabyte probably do as well. The next catch is that AMD’s CPUs only support it if they don’t have an iGPU, for some reason. So if you want a CPU with iGPU, the only way to get ECC support is to get a Ryzen PRO CPU, which aren’t normally sold to consumers, but are readily available secondhand on Ebay, Aliexpress, and other places.

1 Like

Yes, I understand DDR5 supports 2 x 32 data channels. However, I have seen some DDR5 memory modules ONLY advertising 72 bit widths.

This is what Wikipedia says about DDR5’s true ECC memory:

Both subchannels on a DDR5 DIMM each have their own CA bus, controlling 32 bits for non-ECC memory and either 36 or 40 data lines for ECC memory, resulting in a total number of either 64, 72 or 80 data lines.

Now it is not clear if a 36 bit ECC data bus supports the same ECC quality we are used to:

  • Detects and corrects 1 bit errors
  • Detects, but does not correct 2 bit errors

Nor is it clear if 40 bit, (or 80 bit), ECC data bus supports better than that.

1 Like

I don’t know why ECC hasn’t just become the standard across the board. DDR6 or whatever is next should just require it. I would think that if every device used it the quantity of scale would eliminate the extra cost currently seen on ECC products.

ECC does require more of the stuff that makes a DIMM… ie instead of 8 chips, you need 9.

Etc.

That means it will always be more expensive. At least whilst we’re using discrete memory chips.

BUT the reason its not standard across the board is artificial market segmentation.

5 Likes

I voted optional. It depends on what is being stored and how critical it is.

I’m also seeing the usual fear mongering of “if you don’t have ECC, then ALL of your data might as well be gone” which is just silly.

My onsite NAS uses ECC, whereas my offsite NAS (replication target) uses non-ECC, and same goes for my Proxmox hypervisor box running ZFS and non-ECC.

Ideally every single device that connects to my NAS would use ECC, including my laptops, desktops, phone etc, but that’s not the world we live in unfortunately.

I try to use ECC on my NAS boxes. In fact, I just ordered a supermicro board and ECC, so that both NAS boxes have ECC…On my FreeBSD workstations and laptops and servers, I am not as persnickety…Though I have still not had any data corruption there either.

1 Like

I myself used Ryzen 5650G PRO to have both ECC and iGPU.
But I was just looking at the new Ryzen 9000 cpus and looks like now ECC is supported even with iGPU cpus. That makes sense since all AMD cpus have iGPU nowadays.

Yes, but you still have to mind the distinction between monolithic APUs and chiplet-based CPUs: All CPUs support ECC, but only the PRO APUs do.

I was first little confused but according to Wiki CPU is for desktop and APU for notebooks. List of AMD Ryzen processors - Wikipedia

So all desktop processors support ECC but notebook processors only in PRO version.

Yeah, I kinda forgot about notebooks :smiley:

Make that “initially intended for”: Ryzen 4000, 6000, 8000 are APUs you can put in the socket of your desktop motherboard.
If you’re not terminally confused yet, the last batch of Ryzen 5000 parts include a few APUs with a disabled or defective iGPU (as in Intel ‘F’ parts), masquerading as CPUs—but no ECC with your “desktop” Ryzen 5500. And nothing prevents AMD from playing this trick again with AM5 parts. Strictly speaking, most but not all desktop Ryzen parts support ECC: Check the fine prints!

1 Like

Yes, AMD’s APUs with builtin GPU, verses CPU with minimal iGPU gets confusing. It becomes worse because some APUs are designed for laptops / embedded uses, and others work in AM4 / AM5 socketed desktops.

Then we throw in the APU Non-Pro’s lack of ECC compared to the APU Pro with ECC, and it does not make sense.

However, I do like that I can get an all in one CPU with decent builtin GPU. I am past the point of wanting an expandable desktop. My little DeskMini A300 with Ryzen 2400G works perfectly well, No need for external GPU. The only thing I would add is faster networking, (I am so over the 1Gbit/ps Ethernet!).

1 Like

If your beard is as grey as mine, then you remember back when all memory was ECC because them bits were flipping all the time.

1 Like

I use commercial equipment. Primarily because I can’t build what is needed for less than the price of a used HP or DELL server. TrueNAS Core is my OS and hardware is my personal love. According to all that I have read, RAM is an important part of a ZFS system. Although my very first intro to TrueNAS Core was a desktop that didn’t have ECC. I was concerned for Data Integrity. There are specifications for the RAM ratio. I have 64G or more on all of my servers.

I have my family stuff on NextCloud, and can’t be worrying about data integrity. It’s irreplaceable. Not like some movie collection on Plex.

You can’t beat the price of ECC for Servers found on eBay. No it’s not the fastest. Used servers that are 5 or more years old have CPU’s that used to cost thousands each, and RAM that was in that same range. But a good used Proliant server with lots of ram and drives costs a fraction of what a home built system would be, and has better cooling, better documentation, redundant PSU’s and Server grade NIC’s.

I rest my case.

5 Likes

I have to agree with that as well, we learn over time from the experiences we have. I was a young lad on a submarine and we had a memory error (core memory from the old days) and it did have ECC like correction/detection, much better than parity alone for detection. This is a very mission critical system, you don’t want the wrong bit sending your payload to the wrong place. Of course core memory was a little larger than a stick of RAM is today, it is 4+ hours just to replace one bank. Of course todays submarine equipment is more modern than core memory. For my personal life, I have never knowingly had a bit flip error (silent data corruption), I have had flat out RAM failures where the system would fail. I do my best to limit my risk and when it comes to a server where I expect all my data to be safe, it matters. As said above, are you going to tell your spouse that you would not have lots all those photos if you have only spent a few more dollars/pounds/euros/yen/marks?

4 Likes

I’m a bit surprised by alot of the conversation around this topic. Many people here seem to be treating all “ECC” memory as if it were equal.

Super high level…Real, registered (buffered) ECC RAM has a physically different layout. Theres an extra chip on the DIMM itself that sits in between the memory controller and the memory dies.

This type of ECC is very different than ECC Unbuffered DIMMS. Ignoring for a second the “on-die” ECC in DDR5, there has historically always been at least two “server” platforms from Intel. The one that supports ECC Registered memory and the one that supports only ECC Unbuffered DIMMs.

The back-and-forth here regarding AMDs willingness to allow ECC Unbuffered DIMMs on their desktop platform, vs Intel artificially disallowing it on some parts and not others really misses the point. The value of unbuffered ECC is really not at all the same as real buffered memory.

Given the choice, I would always choose registered memory. I prefer buying servers that are a couple of generations old to get it, consuming more power than a more modern platform using ECC unbuffered memory, but for the same up front cost.

But given the choice between a platform that has ECC unbuffered memory and that which has non-ECC unbuffered memory, I really don’t think there’s a whole lot of value. Not when you can pick up older consumer or corporate hardware for next to nothing in comparison for your homelab.

1 Like

Servers at work? Don’t think you can even buy without ECC.

Home media storage? That’s always handed down gaming mobo/cpu/ram. Rather have the important stuff backed up to the cloud. Can always get media again. ECC isn’t that important for home. For me anyways. I’ll take the efficiency of < 5year old desktop parts over 2-3 gen old server parts any day.

I see you deleted the picture. I was going to say it was deceiving

A register dimm has a register chip. An ECC dimm has 9 sets of DRAM chips, instead of 8.

Thus you should see 9 sets of DRAM and a register, and a tiny rom for the dmi info.

This picture is better

IMG_2399

3 Likes