neutronlmk 发表于 2022-5-22 01:04:59

什么情况下可以体现到ecc内存的优势?

长时间不关机不出错?普通内存也没问题。
我的平台就是ecc的,用vmware虚拟一台win10做工作机使用,每天起码捣鼓4小时以上。这win10连续开机10多天也没试过崩溃。不知道是不是ecc内存的作用。
前一台主机已经淘汰,不知道普通内存下搞台虚拟机能连续折腾不?

cne53102 发表于 2022-5-22 02:17:58

本帖最后由 cne53102 于 2022-5-22 02:29 编辑

10天看不出什么,一个季度会显现出差别,可以按100天算,我手头的普通内存的win机器连续开机一两个月就会出问题,无论晚上是否睡眠。
(编辑添加:使用时内存占用50%~85%,虚拟内存占用40%~65%,CPU占用25%~50%,任务偏重,可能不太公平,仅供参考)
不是会死机或者蓝屏崩掉那种,是会出现各种奇怪的问题,比如USB不能用了,半个CPU暴走但任务管理器看不到哪个程序在用,某些程序行为异常导致账户登录失败,显示怪异等等。
ECC内存的GEN8运行linux,没有用服务器专用版系统,用的桌面版Lubuntu,全年不关机不睡眠,开多久都没问题,因为停电,我的最长运行时间记录没能突破2年,可以说至少连续1年不会有问题。
(编辑添加:日常内存占用10%~25%,虚拟内存占用25%,CPU占用0%~5%)

(编辑添加2:win10的机器能开机那么久吗?会不会差不多了自己就给自己重启了?)

gzhuli 发表于 2022-5-22 03:31:34

楼上说的死机蓝屏和内存关系不大,软件本身的不稳定因素为主。

ECC内存的主要作用是防止位翻转错误(bit flipping),这是由背景辐射、宇宙射线等引发的概率性事件。
根据Google 09年在自家大量服务器上做的研究,位翻转错误的发生概率约为每Mbit内存每10亿小时运行时间发生25000~70000次,每年约有1/3的机器至少发生一次位翻转错误。

然而,发生位翻转错误并不意味着系统一定会死机蓝屏,甚至你都根本察觉不到。因为内存里面绝大部分都是数据,运行代码只占很小一部分,操作系统内核代码占比更小,只有发生在操作系统内核的位翻转错误才有可能导致死机蓝屏,发生在应用程序里面的话一般只是应用本身出错崩溃,不会死机。
所以实际使用场景里面,即使是按年算的持续不关机运行,你能察觉到的因为内存出错而导致蓝屏死机的概率也是极低的。

ECC内存的最大作用是保证数据不出错,打个比方说一个金融交易系统因为位翻转错误导致交易金额从1亿变成了2亿,系统不蓝屏不死机,只是金额错了,每秒成千上万的交易,没有ECC内存你根本不会发现数据出错。

至于说个人系统,比如某天看电影的时候忽然有一帧马赛克闪过,你会联想到有可能是内存发生了一次概率极低的位翻转错误吗? {:titter:}

wye11083 发表于 2022-5-22 04:44:56

gzhuli 发表于 2022-5-22 03:31
楼上说的死机蓝屏和内存关系不大,软件本身的不稳定因素为主。

ECC内存的主要作用是防止位翻转错误(bit fl ...
(引用自3楼)

根据我的经验,莫名其妙的毛病还真就是内存某些地方错了。因为我在服务器上同样的造法从来没出现过。

rei1984 发表于 2022-5-22 07:32:21

gzhuli 发表于 2022-5-22 03:31
楼上说的死机蓝屏和内存关系不大,软件本身的不稳定因素为主。

ECC内存的主要作用是防止位翻转错误(bit fl ...
(引用自3楼)

最后一个比喻太形象了。谢谢科普

airbox 发表于 2022-5-22 07:34:21

gzhuli 发表于 2022-5-22 03:31
楼上说的死机蓝屏和内存关系不大,软件本身的不稳定因素为主。

ECC内存的主要作用是防止位翻转错误(bit fl ...
(引用自3楼)

换算成每GB每天的概率,大概是1024*8/1000000000*24*(25000~70000) = (4.9~14.7),这概率还是挺高的,几乎每天都有好多bit位出错

chunjiu 发表于 2022-5-22 07:39:17

我的服务器用普通 PC 做的,通常每周选择凌晨时分自复位一、两次,很少遇到问题。

但之前没有做自复位的时候,时间久了的确有莫名的宕机现象。

akey3000 发表于 2022-5-22 08:08:59

看很多工控系统也是用的非ecc内存,看来不稳定啊

akey3000 发表于 2022-5-22 08:10:56

cne53102 发表于 2022-5-22 02:17
10天看不出什么,一个季度会显现出差别,可以按100天算,我手头的普通内存的win机器连续开机一两个月就会出 ...
(引用自2楼)

请问,ecc内存,是os自动对全部内存区自检,并修复么?还是什么其他自检逻辑?

我是一个大白菜 发表于 2022-5-22 09:29:06

楼主,有个虚拟机跑win10,请教一下,我安装了ubuntu21,然后想跑个win10,发现不管是vbox,vmware创建的虚拟机,都非常卡,有方法不那么卡吗?

z123 发表于 2022-5-22 11:07:52

chunjiu 发表于 2022-5-22 07:39
我的服务器用普通 PC 做的,通常每周选择凌晨时分自复位一、两次,很少遇到问题。

但之前没有做自复位的时 ...
(引用自7楼)

我也觉得,普通机器,运行久了,会有莫名起码问题;比如我的win10,会出现允许同个文件夹下同名文件的情况。。。。。当然,重启正常后是没有的

cne53102 发表于 2022-5-22 12:43:09

akey3000 发表于 2022-5-22 08:10
请问,ecc内存,是os自动对全部内存区自检,并修复么?还是什么其他自检逻辑? ...
(引用自9楼)

我没有详细研究过它,我粗糙的理解是类似通讯中的纠错编码,可以校验和纠错,应该是内存控制器来做这个事情的,所有会有有的CPU支持ECC有的CPU不支持ECC的情况,应该是内存控制器那部分不一样。

可能不准确,有误请坛友指出。

cne53102 发表于 2022-5-22 12:43:40

z123 发表于 2022-5-22 11:07
我也觉得,普通机器,运行久了,会有莫名起码问题;比如我的win10,会出现允许同个文件夹下同名文件的情 ...
(引用自11楼)

啊~我也遇到过这个同个文件夹下同名文件的情况,win7下遇到的

armok. 发表于 2022-5-22 12:48:39

我们论坛使用的Dell服务器,全部都是ECC内存,价格基本是普通内存的2-3 倍(原装的东西本身就贵一些)

z123 发表于 2022-5-22 12:59:38

armok. 发表于 2022-5-22 12:48
我们论坛使用的Dell服务器,全部都是ECC内存,价格基本是普通内存的2-3 倍(原装的东西本身就贵一些) ...
(引用自14楼)

二手非主流代的ecc内存,好像比同时代的普通内存便宜好多

qwe2231695 发表于 2022-5-22 13:02:48

那看起来可以在软件层面对关键数据进行校验可以抵抗部分位翻转错误。

cne53102 发表于 2022-5-22 13:41:08

z123 发表于 2022-5-22 12:59
二手非主流代的ecc内存,好像比同时代的普通内存便宜好多
(引用自15楼)

非主流的话,小心DDR2的ECC内存,超级烫。我一个老工作站是这个,专门有个风扇在内存的位置吹,比CPU的还吵,内存在风中什么都不做也有84度……

DDR3不清楚,DDR4好像没什么温度

jpchen 发表于 2022-5-22 16:18:01

二手的服务器ECC内存条,RDIMM的比普通内存条便宜很多,因为淘汰的服务器上拆的,数量多导致价格便宜,但是还有一种UDIMM的内存条,就比普通内存条贵一点,这种数量少,适用的机型也很有限。一般把前一种叫做REG内存条,后一种叫纯ECC内存条,这两者不可互相替代。

armok. 发表于 2022-5-22 16:24:50

z123 发表于 2022-5-22 12:59
二手非主流代的ecc内存,好像比同时代的普通内存便宜好多
(引用自15楼)

你说的是二手老款ECC。就完全不值钱,因为只能用于服务器,而老款的服务器已经没有人使用。

全新的新款ECC是比普通内存贵很多的。

wye11083 发表于 2022-5-22 16:35:45

我是一个大白菜 发表于 2022-5-22 09:29
楼主,有个虚拟机跑win10,请教一下,我安装了ubuntu21,然后想跑个win10,发现不管是vbox,vmware创建的虚 ...
(引用自10楼)

把opengl驱动装好,然后给vm开3d加速。不支持的话只能直接分配显卡给vm。

wye11083 发表于 2022-5-22 16:37:00

本帖最后由 wye11083 于 2022-5-22 16:38 编辑

akey3000 发表于 2022-5-22 08:10
请问,ecc内存,是os自动对全部内存区自检,并修复么?还是什么其他自检逻辑? ...
(引用自9楼)

bios可以设置巡检(按小时,服务器默认24小时一遍),或者访问时检查。前者可以预防错误,后者长期不访问的数据遇到multi bit error直接蓝屏。

我是一个大白菜 发表于 2022-5-22 16:58:47

wye11083 发表于 2022-5-22 16:35
把opengl驱动装好,然后给vm开3d加速。不支持的话只能直接分配显卡给vm。
(引用自20楼)

好的,我试试看,谢谢指导

hugohehuan 发表于 2022-5-22 17:51:29

gzhuli 发表于 2022-5-22 03:31
楼上说的死机蓝屏和内存关系不大,软件本身的不稳定因素为主。

ECC内存的主要作用是防止位翻转错误(bit fl ...
(引用自3楼)

最后一个比喻不恰当吧……

有很多错误是积累性的。
比如90年代初,单位定工资,两个数工资的个位数算错了。
那好了,这几十年下来,每次工资变动都是按照那个数来的,几十年过去了,退休工资可能都是巨大影响。

hugohehuan 发表于 2022-5-22 17:54:35

cne53102 发表于 2022-5-22 13:41
非主流的话,小心DDR2的ECC内存,超级烫。我一个老工作站是这个,专门有个风扇在内存的位置吹,比CPU的还 ...
(引用自17楼)

哈哈,你这个是带buffer的吧,确实有点猛{:lol:}

cne53102 发表于 2022-5-22 18:02:49

hugohehuan 发表于 2022-5-22 17:54
哈哈,你这个是带buffer的吧,确实有点猛
(引用自24楼)

可能是吧,没仔细看过,挺长时间没碰那台机器了,之后收拾的时候看看

Aper-2020 发表于 2022-5-22 18:40:28

我工作的电脑非ecc内存, 我喜欢休眠,电脑不卡不关。
看到坛友们的讨论,好像明白了为什么时间长了,有时会有莫明其妙的卡。   之前一直以为是某些软件内存释放问题导致的越来越卡

prow 发表于 2022-5-22 19:24:35

amd的锐龙支持ecc实际上指的是纯ECC,而不是服务器上常用的REG ECC

gzhuli 发表于 2022-5-22 19:44:36

armok. 发表于 2022-5-22 16:24
你说的是二手老款ECC。就完全不值钱,因为只能用于服务器,而老款的服务器已经没有人使用。

全新的新款E ...
(引用自19楼)

不是新款老款的问题,RDIMM比UDIMM多一级锁存器缓冲,信号完整性更好,可以支持更多的内存槽而已,代价是发热量更大,延迟更高。
戴尔最新型号的单CPU服务器也还是标配UDIMM内存的,双CPU的型号才开始用RDIMM。

gzhuli 发表于 2022-5-22 19:59:33

本帖最后由 gzhuli 于 2022-5-22 20:01 编辑

airbox 发表于 2022-5-22 07:34
换算成每GB每天的概率,大概是1024*8/1000000000*24*(25000~70000) = (4.9~14.7),这概率还是挺高的,几 ...
(引用自6楼)

我没读完全文,直接看的summary部分,论文给出的总结是每年约1/3的机器和8%的内存条会发生至少一次ECC可纠正的位翻转错误,反过来讲平均每台机器三年会发生一次位翻转错误。

论文原文在这里,还分析了很多因素,有兴趣的可以细读:http://www.cs.toronto.edu/~bianca/papers/sigmetrics09.pdf

jpchen 发表于 2022-5-22 20:09:33

gzhuli 发表于 2022-5-22 19:59
我没读完全文,直接看的summary部分,论文给出的总结是每年约1/3的机器和8%的内存条会发生至少一次ECC可 ...
(引用自29楼)

这样看来的话,我的J3455搭的服务器兼NAS最好每月重启一次了,以免出奇怪问题,以前我很少管它

gzhuli 发表于 2022-5-22 20:16:50

hugohehuan 发表于 2022-5-22 17:51
最后一个比喻不恰当吧……

有很多错误是积累性的。
(引用自23楼)

内存数据是动态的,错误会不会累积要看数据类型,像看视频错了一位下一帧覆盖过去就没事了,堆栈里的指针错了程序就会跑飞崩溃,重新运行就没事了,只有内核里的堆栈等关键数据错了才会蓝屏死机。

实际还要考虑内核的关键数据其实只占很小的内存空间,刚好发生位错误的概率其实没有那么高,所以几天不关机就卡顿蓝屏死机这些大概率不是内存错误引起的。

反正我自己几台7x24跑的设备都是几百天的uptime,停机也只是因为定期清灰和更新内核重启,从没遇到系统和服务有什么不稳定要重启的。

gzhuli 发表于 2022-5-22 20:19:11

jpchen 发表于 2022-5-22 20:09
这样看来的话,我的J3455搭的服务器兼NAS最好每月重启一次了,以免出奇怪问题,以前我很少管它 ...
(引用自30楼)

我的其中一台NAS uptime 321天,去年因为风扇需要清灰关的机。

jpchen 发表于 2022-5-22 21:32:25

gzhuli 发表于 2022-5-22 20:19
我的其中一台NAS uptime 321天,去年因为风扇需要清灰关的机。
(引用自32楼)

这台NAS用的不是ECC内存?

gzhuli 发表于 2022-5-22 22:11:33

jpchen 发表于 2022-5-22 21:32
这台NAS用的不是ECC内存?
(引用自33楼)

ARM单板机,你觉得会用ECC内存么? {:titter:}

yyts 发表于 2022-5-22 22:23:21

群晖NAS,自已升级到32G的 ECC 内存,没什么特别的感觉,一般几个月也会因为升级重启一次,其它时候从来不管这些问题。

biying 发表于 2022-5-22 23:02:44

以前维护网吧用的无盘服务器,用普通主机和普通内存做服务器,会偶尔出现部分游戏在玩的过程中出错。后来换ECC内存的服务器,几年都不出错。现在越来越觉得数据的重要,那位朋友能推荐一下用ECC内存的笔记本电脑?

jpchen 发表于 2022-5-22 23:19:53

gzhuli 发表于 2022-5-22 22:11
ARM单板机,你觉得会用ECC内存么?
(引用自34楼)

arm单板这么稳定,那我也不用太在意我的那台机器了{:lol:}

neutronlmk 发表于 2022-5-23 09:39:08

gzhuli 发表于 2022-5-22 22:11
ARM单板机,你觉得会用ECC内存么?
(引用自34楼)

那我不追求上ecc内存了

gzhuli 发表于 2022-5-23 10:21:46

neutronlmk 发表于 2022-5-23 09:39
那我不追求上ecc内存了
(引用自38楼)

我办公电脑是7x24开机的,甚至BIOS都设置了断电恢复自动开机,除了Windows更新强制重启,从来没遇到什么死机蓝屏的奇怪问题,所以实在无法理解为什么很多人老是说电脑不稳定。

当然,数据库服务器是一定要ECC和RAID的,桌面没什么必要追求ECC,除非你做的是一点都不容许出错的关键任务,那么你应该考虑专业工作站。

modbus 发表于 2022-5-23 10:59:22

以前做过几个化工厂控制系统,用的控制电脑几乎全年不关机,普通内存,还是XP系统,用了十来年了也没出现过死机蓝屏,不过电脑除了控制相关软件没有装其他软件

chunjiu 发表于 2022-5-23 11:49:46

modbus 发表于 2022-5-23 10:59
以前做过几个化工厂控制系统,用的控制电脑几乎全年不关机,普通内存,还是XP系统,用了十来年了也没出现过 ...
(引用自40楼)

老式电脑工艺落后,功耗巨大,但有个意想不到优点,就是比现在的极微工艺半导体可靠性要高一些,抗干扰能力强一些。

记得有新闻说过,美国航天局当年不得不派人到电脑垃圾场翻找被人丢弃的 386 回来用,因为 Intel 工艺和技术升级,老的 CPU 已经停产了。

dz20062008 发表于 2022-5-23 11:53:12

不单与内存硬件有关,操作系统关系也很大。现在的安卓手机就一直工作从不关机也非常流畅,还安装应用各种复杂操作,顶多软件退出从没感觉到系统重启连卡顿都没感觉到。

airbox 发表于 2022-5-23 13:13:30

biying 发表于 2022-5-22 23:02
以前维护网吧用的无盘服务器,用普通主机和普通内存做服务器,会偶尔出现部分游戏在玩的过程中出错。后来换 ...
(引用自36楼)

ddr5,直接在规范标准里面添加了ecc支持

neutronlmk 发表于 2022-5-23 15:21:04

airbox 发表于 2022-5-23 13:13
ddr5,直接在规范标准里面添加了ecc支持
(引用自43楼)

ddr5的ecc只能检错,不能纠正的。

airbox 发表于 2022-5-23 23:56:13

neutronlmk 发表于 2022-5-23 15:21
ddr5的ecc只能检错,不能纠正的。
(引用自44楼)

你是在开玩笑吗?
ECC 全称是 Error Correcting Code
如果只能发现错误不能纠正错误, 那何必搞ECC, 搞个奇偶校验之类的检错码更简单

zzsczz 发表于 2022-6-9 23:51:24

cne53102 发表于 2022-5-22 02:17
10天看不出什么,一个季度会显现出差别,可以按100天算,我手头的普通内存的win机器连续开机一两个月就会出 ...
(引用自2楼)

Lubuntu具体啥版本 ?

zzsczz 发表于 2022-6-9 23:55:53

gzhuli 发表于 2022-5-22 19:59
我没读完全文,直接看的summary部分,论文给出的总结是每年约1/3的机器和8%的内存条会发生至少一次ECC可 ...
(引用自29楼)

论文用的测试机 和你用的机器 是一回事么?

就国内 的行规 和 标准   , 根本不做指望 。

汽车、 奶粉 就那样,电脑能强多少?

dukelec 发表于 2022-6-10 03:29:23

感覺可以拆卸 CPU 和內存條的台式機更容易發生內存數據偶發錯誤,有必要上 ecc

cpu 和內存都是焊死的便攜本和手機,感覺不容易出錯,所以不是那麼需要 ecc
還有內存大小夠用就行,太大出錯概率應該也會高一些,而且耗電也多一些

對於特別敏感的場合,譬如銀行記帳,只有 ecc 保護內存也不夠,因為還擔心 cpu 寄存器意外翻轉,或者 cpu 內部 cache 意外出錯等等,所以要多套設備獨立計算,然後比對結果,結果不同則重新計算

gzhuli 发表于 2022-6-10 06:18:02

zzsczz 发表于 2022-6-9 23:55
论文用的测试机 和你用的机器 是一回事么?

就国内 的行规 和 标准   , 根本不做指望 。
(引用自47楼)

想多了,大家用的内存颗粒绝大部分是国外生产的,而且位翻转本质是高能射线击中储存单元导致电荷泄漏,跟内存本身的质量关系不大,除非是专门做了抗辐射处理的航天级芯片才能降低发生概率。

gzhuli 发表于 2022-6-10 06:21:03

dukelec 发表于 2022-6-10 03:29
感覺可以拆卸 CPU 和內存條的台式機更容易發生內存數據偶發錯誤,有必要上 ecc

cpu 和內存都是焊死的便攜 ...
(引用自48楼)

除了内存内部出错,传输过程也有可能出错,接插件越多可靠性越低是很正常的。

zzsczz 发表于 2022-6-10 18:34:30

gzhuli 发表于 2022-6-10 06:18
想多了,大家用的内存颗粒绝大部分是国外生产的,而且位翻转本质是高能射线击中储存单元导致电荷泄漏,跟 ...
(引用自49楼)

质检标准

PCB工艺比如 板材 焊料

元器件规格

猫腻多着呢

专业人士耍起流氓来 韭菜根本就没反应,

gzhuli 发表于 2022-6-10 19:08:35

zzsczz 发表于 2022-6-10 18:34
质检标准

PCB工艺比如 板材 焊料
(引用自51楼)

位翻转跟这些关系不大。

sxul07 发表于 2022-6-25 22:33:51

使用 zfs 文件系统的时候

MasterPhi 发表于 2022-7-16 14:45:11

这玩意就很玄乎,我自己AMD epyc 7232 + 4*32G RDIMM 的服务器,2年多都没log到一个ECC错误。

amigenius 发表于 2022-10-20 17:18:35

我用H7几年前就开启了SRAM的ECC了,感觉没什么用,哈哈

Appcat 发表于 2022-10-21 09:58:18

跑神经网络,进行模型训练计算,一般都需要很长时间,如果内存出错是让人吐血的,所以GPU卡,特别是专业计算卡基本都是ECC内存

Franso 发表于 2023-3-7 21:59:50

你给win10分配了多少内存呢{:biggrin:}

zchong 发表于 2023-3-8 07:36:55

amigenius 发表于 2022-10-20 17:18
我用H7几年前就开启了SRAM的ECC了,感觉没什么用,哈哈
(引用自55楼)

H7是不是ECC关不掉,特殊处理后能观察到是否发生过错误。

lusson 发表于 2023-3-8 09:27:57

目前用在汽车带功能安全的MCU,基本上都标配RAM及Flash ECC. 弱一点的能纠错1bit,强一点的能纠错2bit.

amigenius 发表于 2023-3-8 12:27:20

zchong 发表于 2023-3-8 07:36
H7是不是ECC关不掉,特殊处理后能观察到是否发生过错误。
(引用自58楼)

H7的ECC是一直开启的,不过并不自动回写,要程序来处理,否则会有累积错误而不能纠错的风险
页: [1]
查看完整版本: 什么情况下可以体现到ecc内存的优势?