Live data from Hacker News

Should I buy ECC memory? (2015)

danluu.com

151–160 of 237 posts

Re: Should I buy ECC memory? (2015)

#151
post #52
post #5

Yes. Bit errors are uncommon and range from benign to crash. Your storage has them, memory has them, network has them. Non error correcting memory very significantly increases risk. And this is the kind of risk you don't notice, until you do and when you do, it's often subtle, insidious, impossible to track down. Servers absolutely. It's debatable on desktop, but we have huge RAM now. Might as well error correct. The…

Does it make any difference if you're using your desktop to compile stuff?

If you want to be sure it's right, yes.

Here is the thing:

Without ECC, or even simple parity on the RAM, the CPU cannot validate a data transfer.

In the 90s, a place I worked for had a server running non parity, non ECC RAM. That machine was fast and cheap.

But it would demonstrate the most bizarre problems, from time to time.

A fresh OS install would fix it. Then a year or so, off the farm again.

I saw no error correction, had it replaced with a very similar machine, no issues.

The argument was, it's only the possibility, and only once in a blue moon...

The bigger the RAM, the faster we do stuff, the sooner "once in a blue moon" tends to happen.

I did put that box on my personal network, and under Linux (was win NT before), seemed fine. In the syslog, after a year, there were various kernel messages, each recovered, but there was something to recover from... Win NT would blue screen a lot. That's different today with better kernel software from Microsoft, but the point is no error correction comes with no real way to understand where some trouble may have come from.

And that was doing light duty stuff. Didn't trust it for a build, frankly.

We get fast, quality, cheap. Pick two :D

more generally, the fact that the CPU cannot know if it's transactions with RAM make any sense, unless ECC or even simple parity are present, should be a worry today.

Our processes are small, clocks fast, density high. We are pushing it on all fronts!

Best employ error correction.

And, back in the day, the Apple 2 had no parity on its RAM, the first IBM PC did. Even those much larger, more robust circuits, clocked slowly, would throw bit errors.

The IBM guys knew that from their experiences.

Re: Should I buy ECC memory? (2015)

#152
post #52
post #5

Yes. Bit errors are uncommon and range from benign to crash. Your storage has them, memory has them, network has them. Non error correcting memory very significantly increases risk. And this is the kind of risk you don't notice, until you do and when you do, it's often subtle, insidious, impossible to track down. Servers absolutely. It's debatable on desktop, but we have huge RAM now. Might as well error correct. The…

Does it make any difference if you're using your desktop to compile stuff?

Today, one can buy good hardware and get a seriously long run time on it.

A spend for a fast, robust, ECC machine is worth it.

During the rapid ramp up early on, price arguments were stronger because replacement came much sooner.

Today, particularly on desktop, one can get a killer machine and run it more than long enough to factor out the cost of ECC.

Re: Should I buy ECC memory? (2015)

#153

An old article from DJB worth perusal: http://cr.yp.to/hardware/ecc.html It's also worth noting that not all ECC (SECDED) is created equal: ChipKill™ and similar might not survive physical damage because of likely shorts of the data bus but a single malfunctioning chip producing/experiencing higher hard error rate is possible from which to recover. Also, it'd be really cool if some shop a-la BackBlaze blogged about l…

PS: Random-crazy thought.. it's curious with reduction of costs via Moore's law improvements that there aren't yet formally-verified, zero-knowlege systems which can end-to-end prove they performed computation/real-world side-effects and/or continue to safely store data. Why blindly trust anyone or any company with data that can be seized, lost or misused when distributed computation, communication and storage can be…

It wasn't necessary because we've already had systems whose hardware and/or software reliability reached decades between events of unplanned downtime.

https://lobste.rs/s/jea4ms/paranoid_programming_techniques_f...

http://www.hpl.hp.com/techreports/tandem/TR-86.2.pdf

http://h71000.www7.hp.com/openvms/whitepapers/high_avail.htm...

http://www.enterprisefeatures.com/why-are-iseries-system-i-a...

Now I'm not including all the anonymous, zero-knowledge stuff since the market won't buy that. All kinds of costs come with it that they don't want. Besides, most consumers and enterprises love products with lots of surveillance built in. ;)

Re: Should I buy ECC memory? (2015)

#154
post #135

Earlier quoted context omitted.

Amd has modestly priced hardware that supports ecc

Was that the case before Ryzen? I know their new CPUs support ECC, but I'm not sure for earlier generations.

I think it was common for AM3 for example too.

Re: Should I buy ECC memory? (2015)

#155

Earlier quoted context omitted.

Should be about 1/8th more since it's just a 72-bit bus for carrying 64-bits data and 8-bits check. Or rather, your dimm will have 9 chips instead of 8. How they get you is Intel will sell you a xeon which is the exact same die as an i5 in a different package for more money.

Depends what you need - you can pick up older gen Xeon chips for cheap and the performance often isn't that much worse than modern consumer grade stuff. If you're looking to build a consumer-level NAS or home server, Avoton is pretty cheap and takes ECC RAM.

Unfortunately, Avoton might just suddenly stop working on you.

https://www.servethehome.com/intel-atom-c2000-series-bug-qui...

Re: Should I buy ECC memory? (2015)

#156
post #13

Earlier quoted context omitted.

There is a hidden cost of ECC with regards to the chipset. None of the cheap chipsets support it, so on any home build, it's going to be expensive.

Not true with Ryzen, as long as you find unregistered ECC acceptable. Somewhat not true with Intel, as some of the lower end Xeons now support it.

Ryzen ECC support is a mess, no AM4 motherboard currently on the market has implemented ECC support fully and properly (not even Asrock). It's better than nothing but you would be a fool to rely on it.

http://www.hardwarecanucks.com/forum/hardware-canucks-review...

"Kinda sorta works but the manufacturer won't stand behind it" is bunch of bullshit. If your data is worth using ECC in the first place - it's worth using a platform that has fully-implemented support, that has passed validation, that you know is going to work properly when you need it.

Until that happens - this is an application where Ryzen is simply not appropriate.

All of the modern i3s and Pentiums support ECC, but you do need the server chipset instead of the cheap consumer stuff. Good news though - those "expensive server boards" are roughly the same price as say, an AM4 motherboard with an X370 chipset.

Heck, you can buy a basic off-lease ThinkServer TS140 for only about $300. You'll only have about 4 GB of RAM but it's a shell to start building out (which is cheaper than having an OEM assemble it for you anyway).

Re: Should I buy ECC memory? (2015)

#157
post #156

Earlier quoted context omitted.

Not true with Ryzen, as long as you find unregistered ECC acceptable. Somewhat not true with Intel, as some of the lower end Xeons now support it.

Ryzen ECC support is a mess, no AM4 motherboard currently on the market has implemented ECC support fully and properly (not even Asrock). It's better than nothing but you would be a fool to rely on it. http://www.hardwarecanucks.com/forum/hardware-canucks-review... "Kinda sorta works but the manufacturer won't stand behind it" is bunch of bullshit. If your data is worth using ECC in the first place - it's worth using…

Ryzen ECC support is a mess, no AM4 motherboard currently on the market has implemented ECC support fully and properly (not even Asrock). It's better than nothing but you would be a fool to rely on it.

Ryzen motherboard support is what is agreeably a "mess", not the processor itself, but at least it's functional on ASRock and select Gigabyte boards. As for "a fool to rely on it", not sure what you mean by that. The error correction itself is done by the hardware. Other than calling the initialization routines and providing logging/halt, the BIOS/UEFI isn't responsible for anything afaik.

I'm well aware that this isn't the full grade of ECC support offered by higher-end Xeons and chipset combos, but it's better than nothing and it's affordable.

Also, no offense, but I'm not going to rely on hardwarecanucks as an authority on this subject.

All of the modern i3s and Pentiums support ECC, but you do need the server chipset instead of the cheap consumer stuff. Good news though - those "expensive server boards" are roughly the same price as say, an AM4 motherboard with an X370 chipset.

The goal isn't ECC alone, at least not for me, the goal is an 8-core system with good single-threaded performance and ECC at a reasonable price. As far as I know, only Ryzen offers that.

So for me, I'm looking at the possibility of getting a single system that can give me decent gaming performance, good development performance, ECC support, and more, all at a price that leaves me with money for other components.

Re: Should I buy ECC memory? (2015)

#158
post #156

Earlier quoted context omitted.

Ryzen ECC support is a mess, no AM4 motherboard currently on the market has implemented ECC support fully and properly (not even Asrock). It's better than nothing but you would be a fool to rely on it. http://www.hardwarecanucks.com/forum/hardware-canucks-review... "Kinda sorta works but the manufacturer won't stand behind it" is bunch of bullshit. If your data is worth using ECC in the first place - it's worth using…

Ryzen ECC support is a mess, no AM4 motherboard currently on the market has implemented ECC support fully and properly (not even Asrock). It's better than nothing but you would be a fool to rely on it. Ryzen motherboard support is what is agreeably a "mess", not the processor itself, but at least it's functional on ASRock and select Gigabyte boards. As for "a fool to rely on it", not sure what you mean by that. The e…

There was an old HN thread: https://news.ycombinator.com/item?id=14004216

Re: Should I buy ECC memory? (2015)

#160
post #154
post #135

Earlier quoted context omitted.

Was that the case before Ryzen? I know their new CPUs support ECC, but I'm not sure for earlier generations.

I think it was common for AM3 for example too.

ECC is officially supported by all AM2/3(+) CPUs and AFAIK all corresponding motherboards from ASUS. As in, you have it guaranteed on the spec sheet.

There are also reports of BIOS support in some boards which don't have ECC advertised. And you can try to enable it in the OS even without BIOS support, though some level of hardware support is still necessary. As Linux documentation puts it: "may cause unknown side effects" :)

Post reply on HN