Live data from Hacker News

Should I buy ECC memory? (2015)

danluu.com

181–190 of 237 posts

Re: Should I buy ECC memory? (2015)

#181

Earlier quoted context omitted.

That data set covers 2006-2009 and the ram consisted of 1-4GB DDR2 running at 400-800 MB/S. Back when 4GB was considered a beefy desktop, consumers could get away with a few bit-flips during the lifetime of the machine. Now my phone has that much RAM and a beefy desktop consists of 16-32 GB of RAM running at 3GB/s. It's time we start trading off the generous speed and capacity gains for a some error correction.

Note that the error rate is not proportional to the amount of RAM, it is proportional to the physical volume of the ram chips. (The primary mechanism that causes errors are highly energetic particles hitting the chips, the chance that this happens is proportional to the volume of the chips.) This means that the error rate per bit goes down as density goes up.

Wouldn't it go up if the density increases? If the particle hits the chip there are more bits at the place where the particle hits.

So while the chance of hit is lower (per GB), if it hits its effect will be higher (more bits flipped).

Re: Should I buy ECC memory? (2015)

#182

Altitude also plays a factor in random memory corruption. From the wikipedia article on ECC Ram, "Hence, the error rates increase rapidly with rising altitude; for example, compared to the sea level, the rate of neutron flux is 3.5 times higher at 1.5 km and 300 times higher at 10–12 km (the cruising altitude of commercial airplanes).[3] As a result, systems operating at high altitudes require special provision for r…

Data centres near Amsterdam are below sea level, which has been known to worry some of their foreign customers. They should just start advertising that as ECC error resistant :-)

Re: Should I buy ECC memory? (2015)

#183
post #33
post #24

Earlier quoted context omitted.

I don't get this association between ZFS and ECC. The recommendation to use ECC with ZFS basically comes down to "all that fancy data integrity checking that ZFS does won't protect you from memory errors, so you'll effectively lose that feature." Are you OK with silent data corruption? If so, don't bother with ECC. If not, use it.

History. The ZFS folks, back when, were the only folks making much noise about the association between non-ECC RAM and corrupt data landing on disk. The truth is, if you care about the notion that your disk should return the same data that software thought it was writing, you should use ECC with any file system. But The ZFS folks made noise about the issue, I think lots of people assumed the reason was that there was…

Kind of, there are two main things that give ZFS this false reputation.

First is an academic paper testing if modern filesystems still needed ECC RAM. They tested ZFS and concluded horrible things could happen to your data without ECC RAM. They found the same about ext2, but that was just a small paragraph people overlooked. So nothing new, but many people are unaware that other FS have the same issue.

Second is a moderator on the FreeNAS forums coming up with a scenario where a ZFS scrub would wipe out your data. Developers and other people that have read the code said it couldn't happen as described, but the story was perpetrated on the FreeNAS forums and spread across the net.

Re: Should I buy ECC memory? (2015)

#184
post #52

Earlier quoted context omitted.

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 cor…

> 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.

Haha, I remember my first steps with Linux in 1998/99. I got a faulty hard disk of 100MiB that on Windows was constantly getting errors. How ever, when I try to use it on Linux, I found that was working without any issue.

Re: Should I buy ECC memory? (2015)

#185

I searched for a good Linux laptop recently with ecc but didn't find much so settled on a kaby lake i5. Does anyone make them?

For example Lenovo P51 seems to support ECC (if equipped with Xeon processor). About the Linux support I don't know, but I've understood at least some other Lenovo models work ok with Linux.

http://psref.lenovo.com/Product/ThinkPad_P51

Re: Should I buy ECC memory? (2015)

#186

Earlier quoted context omitted.

Wait so when someone typoes cnn.com as con.com, that is ipso facto a memory error? I guess I could see that if the characters are radically far apart on the keyboard? But doesn't a simpler explanation like "one person out of billions with Internet access typed the wrong thing" seem a lot more likely?

Domains that are only used as CDNs, like cloudfront.com, are almost never typed into an address bar. Errors in the domain name are more frequently the result of a bit-flip error.

This seems like a pretty weak argument. OTOH, 3% of the HTTP requests made to a bitsquatted domain in the linked articles had the original domain in the Host: header; those sound like actual memory errors.

Re: Should I buy ECC memory? (2015)

#187
post #181

Earlier quoted context omitted.

Note that the error rate is not proportional to the amount of RAM, it is proportional to the physical volume of the ram chips. (The primary mechanism that causes errors are highly energetic particles hitting the chips, the chance that this happens is proportional to the volume of the chips.) This means that the error rate per bit goes down as density goes up.

Wouldn't it go up if the density increases? If the particle hits the chip there are more bits at the place where the particle hits. So while the chance of hit is lower (per GB), if it hits its effect will be higher (more bits flipped).

An alpha particle for instance is atleast an order of magnitude smaller than smallest transistor. The maximum damage it can do is effectively 1 bit.

Re: Should I buy ECC memory? (2015)

#188

Earlier quoted context omitted.

That data set covers 2006-2009 and the ram consisted of 1-4GB DDR2 running at 400-800 MB/S. Back when 4GB was considered a beefy desktop, consumers could get away with a few bit-flips during the lifetime of the machine. Now my phone has that much RAM and a beefy desktop consists of 16-32 GB of RAM running at 3GB/s. It's time we start trading off the generous speed and capacity gains for a some error correction.

Note that the error rate is not proportional to the amount of RAM, it is proportional to the physical volume of the ram chips. (The primary mechanism that causes errors are highly energetic particles hitting the chips, the chance that this happens is proportional to the volume of the chips.) This means that the error rate per bit goes down as density goes up.

Cosmic rays causing the errors has got me thinking about if the error rates vary with the time.

Do you get more/less errors when it's day time (due to the Sun)? Does the season affect it (axial tilt means you're more/less "in view" of the galactic core)?

Re: Should I buy ECC memory? (2015)

#189
post #55

While I was at Google, someone asked one of the very early Googlers (I think it was Craig Silverstein, but it may've been Jeff Dean) what was the biggest mistake in their Google career, and they said "Not using ECC memory on early servers." If you look through the source code & postmortems from that era of Google, there are all sorts of nasty hacks and system design constraints that arose from the fact that you could…

Google had done extensive studies[1]. There is roughly 3% chance of error in RAM per DIMM per year. That doesn't justify buying ECC if you have just one personal computer to worry about. However if you are in data center with 100K machines each with 8 DIMM, you are looking at about 6K machines experiencing RAM errors each day . Now if data is being replicated then these errors can propogate corrupted data in unpredic…

This makes me wonder how banks deal with this issue.

Re: Should I buy ECC memory? (2015)

#190
post #181

Earlier quoted context omitted.

Wouldn't it go up if the density increases? If the particle hits the chip there are more bits at the place where the particle hits. So while the chance of hit is lower (per GB), if it hits its effect will be higher (more bits flipped).

An alpha particle for instance is atleast an order of magnitude smaller than smallest transistor. The maximum damage it can do is effectively 1 bit.

Actually these high energy particles tend to be order of size of proton or less - so make that 6 orders of magnitude smaller than smallest transistor.
Post reply on HN