Why use ECC? (2015)
ECC (error-correcting) memory is framed as increasingly important as systems grow larger and less reliable, with anecdotes of silent data corruption, crashed databases, and flaky gaming rigs blamed on non-ECC RAM. Commenters debate why ECC remains rare in consumer PCs and small form-factor machines, pointing to vendor segmentation, higher prices, and performance trade‑offs, while noting that server CPUs, caches, and some GPUs already use ECC internally. There is broad agreement that wider ECC adoption—or at least better hardware and firmware support—would significantly improve real-world system reliability, even though it cannot eliminate all hardware or software errors.
Role and Value of ECC
- Many commenters argue ECC should be the default in all computing, not just servers.
- ECC is seen as critical for avoiding silent data corruption (“bitrot”), especially for databases, backups, and long‑lived data.
- Several anecdotes describe dramatic data loss or corrupted backups traced to bad non‑ECC RAM; those users now pay a premium for ECC.
- A 2024 note is cited that a significant fraction of Firefox crashes (10–20%) were due to memory corruption, reinforcing ECC’s value.
Cost, Performance, and Availability
- ECC DIMMs theoretically need ~12.5–25% extra bits, but real‑world price premiums can be much higher due to “enterprise” positioning and limited supply.
- DDR5 ECC options remain relatively expensive and often slower, with higher latency and lower peak speeds than popular non‑ECC kits.
- Some say ECC builds are now easy; others report painful compatibility issues and binning problems, especially with older Xeon rigs.
Consumer Platforms and Support
- Intel is criticized for restricting ECC to server/workstation lines, pushing consumer platforms without ECC.
- AMD desktop support is seen as better but inconsistent: CPUs often support ECC “with motherboard support,” but ECC SODIMMs and clear guarantees are hard to find; newer Ryzen 8000 APUs reportedly drop ECC.
- Small form factor devices (NUCs and similar) rarely support ECC; users are pointed toward mini‑ITX boards or used rack servers instead.
DDR5 On‑Die ECC vs “Real” ECC
- DDR5’s on‑die ECC is described as a yield and reliability aid inside the chip, not a replacement for system‑level ECC.
- It typically doesn’t expose error statistics, so you can’t see how often it is correcting faults.
CPUs, GPUs, and Other Reliability Mechanisms
- Most CPUs already use ECC on caches; server CPUs may add opaque “RAS” features, but details are unclear.
- GPUs without ECC are noted as error‑prone for general compute; some cards (e.g., high‑end RTX) can enable ECC, often with performance trade‑offs.
- Cosmic‑ray‑induced soft errors are acknowledged, but some argue software bugs and over‑aggressive overclocking dominate real‑world crashes.
Alternatives and “Soft ECC” Ideas
- One proposal: “soft‑ECC” via triplicated pages managed by the CPU/OS for critical code/data; others respond that it would be complex and slow, and proper hardware ECC is simpler.
- There is agreement that ECC reduces, but does not eliminate, error risk; the remaining probability can be made negligible compared to other failure modes.