什么是 ECC RAM 以及为什么它更好?

什么是 ECC RAM 以及为什么它更好?

我看过关于服务器上使用 ECC RAM 的讨论。为什么它更好?

答案1

ECC RAM 可以利用奇偶校验位来恢复位中的小错误。由于服务器是共享资源,正常运行时间和可靠性非常重要,因此通常使用 ECC RAM,价格差异不大。ECC RAM 还用于 CAD/CAM 工作站,在这些工作站中,小的位错误可能会导致计算错误,而当设计投入制造时,计算错误会成为更严重的问题。

答案2

出色的现实世界研究:

实际存在的 DRAM 错误:大规模现场研究(pdf)

本文首次对 DRAM 内存错误进行了大规模研究。研究基于 Google 服务器群在两年多的时间内收集的数据,这些数据包括数百万个 DIMM 日。我们研究中的 DRAM 涵盖多个供应商、DRAM 密度和技术(DDR1、DDR2 和 FBDIMM)。

本文探讨了以下问题:内存错误在实际中有多常见?它们的统计特性是什么?它们如何受到温度和系统利用率等外部因素的影响?它们如何随着芯片密度、内存技术和 DIMM 年龄等芯片特定因素而变化?

我们发现,现场 DRAM 错误的表现方式在很多方面与通常假设的非常不同。例如,我们观察到 DRAM 错误率比之前报告的要高出几个数量级,FIT 率(每十亿设备小时的故障率)为每兆位 25,000 到 70,000,每年有超过 8% 的 DIMM 受到影响。我们提供了强有力的证据表明,内存错误主要由硬错误而不是软错误引起,而之前的大多数研究都集中于软错误。我们发现,在影响 DIMM 在现场错误行为的所有因素中,温度的影响出奇地小。最后,与普遍担心的不同,我们没有观察到任何迹象表明,随着新一代 DIMM 的出现,每个 DIMM 的错误率会增加。

有趣的是,大多数内存错误都是硬错误——硬内存错误是不可恢复的,这意味着内存必须因发生故障而进行物理替换而软内存错误可以通过用正确的值覆盖内存来修复。这表明 ECC 的价值相当有限。

内存系统中通常会发生两种错误。第一种称为可重复错误或硬错误。在这种情况下,硬件出现故障,并会持续返回错误结果。例如,某个位可能会卡住,无论写入什么,它都会始终返回“0”。硬错误通常表示内存模块松动、芯片烧坏、主板缺陷或其他物理问题。由于它们是一致的和可重复的,因此相对容易诊断和纠正。

听起来研究中的所有服务器都使用了 ECC,所以我们无法知道 ECC 与非 ECC 的错误率。

本文研究了大型商用服务器中 DRAM 错误的发生率和特征。我们的研究基于超过 2 年收集的数据,涵盖了多个供应商、多个代、多个技术和多个容量的 DIMM。所有 DIMM 都配备了纠错逻辑 (ECC),以纠正至少单个位错误。

答案3

ECC 比奇偶校验有几个优势。首先,它可以检测和修复单比特错误,而且无需停止整个系统。多比特错误仍会返回奇偶校验错误,但除非内存本身有缺陷,否则在 PC 的使用寿命内发生这种情况的几率极低。ECC 就像汽车保险:它可以为您承保大多数可能出错的情况,但无法防止多车连环相撞。

更多详细信息请见此处:ECC 内存:服务器必备,而非台式电脑

答案4

为了简单起见,引用维基百科

计算机系统内部的电或磁干扰可能会导致 DRAM 的单个位自发翻转到相反状态。最初人们认为这主要是由于芯片封装材料中的污染物发射的阿尔法粒子造成的,但研究 [5] 表明,DRAM 芯片中大多数一次性(“软”)错误都是由于背景辐射而发生的
......
通过使用包含额外内存位的 DRAM 模块和利用这些位的内存控制器,可以缓解此问题。这些额外的位用于记录奇偶校验或使用纠错码

相关内容