Suppose I'm doing scientific computing, is ECC solving a super rare problem, or something that might happen weekly or monthly?
Suppose I'm doing scientific computing, is ECC solving a super rare problem, or something that might happen weekly or monthly?
Google did a big study in 2009 [0] and found error rates between 2.4E-11 and 6.7E-11 errors/bit-hour, or, in more familiar units: about 1 error per 2-GByte of memory per hour.
Obviously most errors go unnoticed, but for anything where random bit flips are unacceptable, ECC is necessary.
Note too that error rates go up with memory density, not down, so things might be worse with more recent chips.
[0] http://www.cs.toronto.edu/~bianca/papers/sigmetrics09.pdf
Wow! So that means a 16GB laptop will on average experience 8 memory errors per hour under moderate load? I had no idea it was that high.
This likely explains why my Mac crashes randomly but incredibly rarely. It's like once every few months. I guess a bit flip happens at the wrong place about that often?
Thus ECC would be super helpful to those that expect that most of the 64GB will be filled with bits that shouldn't be changed.
This article by a system integrator is a pretty decent data point: https://www.pugetsystems.com/labs/articles/Advantages-of-ECC...
But this would be if you were using 64GB nonstop for a month, which is quite a bit rarer than just having 64GB. And certain filesystems (ZFS, Btrfs) and most databases have software checksumming functionality to detect bitrot.
Not to say ECC isn't useful or multiple layers of protection aren't prudent, just that the problem it solves is something you're unlikely to encounter below datacenter scale.