Memtest可以通过多少次?


52

今天,我的计算机在多种情况下和在不同的操作系统上随机挂起,需要我按下“重置”按钮。我怀疑这可能是内存问题,并memtest使用memtest86进行了处理

它经历了两次通过,没有错误。这够了吗,还是我需要通宵过夜,直到看到错误?

如果是主板或CPU问题怎么办?我怎么知道没有新主板?

系统规格:

  • 内存:2.0GiB
  • 处理器Pentium(R)双核CPU E5300 @ 2.60GHz x 2
  • 主板:华硕P5KPL-AM EPU

您可能已经知道了这一点,但是下次挂起后,请查看Linux上的内核日志。这将使您对发生的事情有所了解。
斯科特斯科斯特,2014年

@CarComp:请发布失败的memtest结果。
harrymc

Answers:


25

测试不能证明不存在错误,而只能证明它们的存在

Memtest非常适合查找RAM中的错误。查找错误的速率必然与RAM的损坏程度成反比。越破碎,发现错误的速度就越快。

90%的时间,如果RAM有问题,memtest会在99%的时间10秒内找到它,一次通过就可以找到问题。查找问题所花费的时间越长,问题就越细微,并且导致您的PC出现问题的可能性就越小(但是即使出现一个错误,您也应该获得新的内存)

由于您的计算机经常崩溃,并且已经运行了几次,因此可能不是您的RAM。下一步,您应该使用Ultimate Boot CD或Hiren's之类的工具测试硬盘驱动器,然后测试CPU。(大多数现代BIOS也具有内置的HDD测试功能)


2
我建议尝试清洁RAM和插槽,然后再次进行测试(使用异丙醇;在更换消毒喷雾剂方面有积极的经验;但是不要将后者直接喷到RAM上-只能喷在布上,因为它只能用作为溶剂,使用量过多时最终会残留一些残渣)
SDwarfs 2014年

3
因此,如果有人遇到至少一个错误-他会扔掉RAM,然后去购买新的RAM?你确定吗?
Tarasovych '18

1
@Tarasovych:这取决于系统稳定性对您的重要性。在我工作的PC上,我会做到这一点(将所有RAM扔掉并购买新的),因为(1)RAM很便宜,并且(2)软件开发人员时间很昂贵。实际上,即使扔掉整台PC并购买一台新PC也可能比由于PC不可靠而导致的生产力/工作损失便宜。
Heinzi

@Heinzi看看今天和一年前的RAM价格...但是也许在您所在的地区有便宜的RAM。但是我同意,良好的无错误RAM是开发所必需的。没人喜欢在编码时遇到RAM错误/ BSOD)
Tarasovych

1
超频也会导致这些错误,但这并不意味着您应该扔掉内存,只是要减少超频或在安全范围内增加内存电压。
M.kazem Akhgary

21

我运行了memtest,发现6次传递没有错误,此后每遍传递4个以上错误。我通常只运行3-4次,但是通过几次传递肯定有可能错过错误。我以为有些错误只会在内存模块变热时弹出,从而导致内存在高电压下运行时出现问题。


如果是与热量相关的问题,prime95会不是更好的测试向量,从而在系统中产生更多热量吗?
杰夫·阿特伍德

@JeffAtwood这里没有专家,但是prime95不一定指向RAM错误吗?
Hele 2015年

要测试与散热有关的错误,请在每个CPU内核上运行一个memtest实例。在电源管理下选择性能配置文件。对于笔记本电脑,请勿将其放在冷却架上。让memtest运行24小时。如果没有错误,则说明您的RAM没有问题。
user986363 2016年

12

在工作中,我们通常让机器整夜运转,但是,公平的说,每次我能够通过memtest来显示内存问题时,它都在启动它的几秒钟之内。

我从未见过一台机器经过1次全程通过后就失败了。(并不是为了证明它是罕见的就不一定是不可能的。)

我曾经在一家计算机商店工作,我们每天或多或少地开始在新计算机上进行内存测试。

没有足够的信息可说,因此我仍然猜测您的问题可能是过热或驱动程序错误。

由于您尝试了多个操作系统,因此驱动程序部分似乎不太可能。例如,除非您仅尝试使用相同驱动程序的不同Windows版本。


3
我实际上看到了从第3遍开始的错误。我认为这与RAM,CPU和/或内存控制器的预热有关。我遇到的所有此类问题均与RAM与插座的连接不正确,插座与主板的连接或RAM上的碎片有关(当我取出RAM,清理RAM + Socket连接器并将RAM放回原位时,问题)。
SDwarfs 2014年

PS:我建议至少3次通过。尽管通宵达5-8次通行更为可靠。
SDwarfs 2014年

1
我相信由于热量,第三次出现错误。
benallansmith 2015年

1
在2-3个小时的memtest86 +之后,我看到了一个问题。相同的内存30分钟是“确定”。
i486

12

http://hcidesign.com/memtest/manual.html

100%的覆盖率表示测试您的内存的完整测试。通常,最好进行多次通过。您可以使用以下三种典型的测试时间:

  1. 测试直到100%覆盖(快速测试以确保您的RAM正常运行)
  2. 测试1小时(这将捕获除间歇性错误之外的所有内容)
  3. 隔夜进行测试(建议;建议您的计算机在晚上仍然不做任何其他事情,为什么不完全确定您的RAM是否正常?)

7

我已经看到RAM通过了memtest的前6次传递,但随后的传递却失败了,并且在运行具有该RAM的Linux操作系统时,会在6-8小时后锁定。同一块主板上的其他RAM运行良好,因此显然发生故障的RAM对温度敏感。

当我怀疑RAM问题(例如带诊断指示灯的Dell计算机)时,我会在第一个插槽中一次在一个RAM模块上运行memtest 8-16小时。如果通过,则确认插槽和RAM模块均良好,并且我可以(更多)放心地使用该插槽来测试其他RAM模块。


您确定Memtest86测试RAM插槽吗?我不知道是不是。
Hashim

6

我对memtest86 +的使用经验与这里的大多数人有所不同。多年来,memtest86对我有很大帮助,但不幸的是,有时它无法检测到错误。

尽管memtest在大多数情况下都有效,但它使我几次失败。第一次无法检测到错误时,我有一台配备1x 4GB DDR3的PC,该PC给了我与内存有关的BSOD。我花了整整一天的时间进行记忆测试,我们谈论的是超过15次通过,但没有出错。然后,我在完全不同的计算机上进行了测试,同样,没有错误。操作系统完全不稳定,但memtest上没有错误。然后,我使用了Eurosoft的另一个名为“ PC-Check”的软件,该软件与memtest非常相似,但是使用了不同的算法。它也是可启动的,不需要任何操作系统。它在不到5分钟的时间内检测到错误。然后,我能够将模块发送到Corsair RMA并得到替换。

因此,memtest很好,但并不总是足够的。我目前使用memtest和PC-check检查内存。如果memtest无法检测到错误,则PC检查肯定会,反之亦然。相信我,它发生的频率比人们想象的要多。


4

MemTest86尝试对RAM进行完整的测试。这样做时,它也已成为一项不错的全面测试,因为其中一些测试还涉及主板的内存控制器和CPU。

RAM已大大增加,以至于如今的便携式电话可能比20年前的大型机包含更多的RAM。随着MemTest86的发展,测试数量成倍增加,RAM也随之增长。尽管RAM变得越来越快,但测试仍很耗时,以小时甚至数天为单位。

现在来个坏消息:我发现至少有两个可敬的消息来源, 十个论坛Wiki如何 提供相同的建议。我引用十个论坛的话:

MemTest86 +至少需要运行8次才能得出结论,否则将无法对RAM进行完整的分析。

如果十个论坛成员要求您运行MemTest86 +,请确保运行完整的8个通行证以获得最终结果。如果您运行的次数少于8次,则会要求您重新运行一次。

我应该指出,MemTest86有两个版本,免费版和专业版,其中专业版比免费版和配置选项具有更多的测试。您可能会在“ 功能比较 ”一文中看到差异 。

有关最佳通过次数的更多信息,可以从 MemTest86配置信息(仅在Pro版本中可用)的描述中从MemTest86技术信息一文中获得mt86.cfg

合格1

指定第一遍应运行完全测试还是简化测试。默认情况下,第一遍应该运行简化的测试(即减少迭代次数),以便尽快检测出最明显的错误。

结论1:第一遍较短且更快,主要用于检测硬错误。令人鼓舞的是,第一遍通过没有错误,这一事实令人鼓舞,但免费版的用户需要等待第二遍通过才能进行全部测试。

我发现通过次数最多的是此测试:

测试7 [反向移动,32位模式]

这是移动反演算法的一种变体,该算法针对每个连续地址将数据模式左移一位。每次通过时,起始位位置向左移动。为了使用所有可能的数据模式,需要32次通过。该测试对于检测数据敏感错误非常有效,但是执行时间很长。

结论2:测试7需要32个通过才能完全完成,这是真正详尽的测试所需通过次数的上限。

我还指出,许多测试使用随机模式,每次通过的模式都不同,这意味着每次通过都是不同的。如果把它推到荒谬的高度,我们可以得出结论,绝对结论性结果所需要的通过次数没有上限。

我的意见

我对通过次数的看法是,应该运行与需要等待的次数一样多的通过次数。下限似乎是两次通过,因为只有第二次才是完整的测试。但是“多少就足够”的问题没有真正的答案。我再次指出,对于我上面引用的两个技术参考,获得良好而确定的结果所需的最小通过次数为8次通过(也许使Test 7可以完成一个完整的8位字节)。

另一方面,应非常重视MemTest86发现的错误。当在这里提出有关可接受的故障数量的问题时,我的回答是,即使是一次故障也太多了,也不可接受。


您的答案传达的见解超越了其他观点。
CarComp

1

我通过了一遍,看是否有明显的错误。

如果有错误,则不再需要通过。

如果计算机的问题很奇怪,我可以将它整夜或整天运行10个小时,以确保确定。


1

通常,每次更换CPU,内存或发现奇怪的问题时,我通常都会运行memtest。原因是-memtest不仅测试内存。在其他三个重要情况下,它将出错:

1)如果由于CPU或内存过热而出现问题。通常,memtest会将多个测试的CPU加载到几乎100%。

2)如果CPU无法正确访问内存。大多数测试都在内存的所有位置进行读写。

3)电源是否有问题。也就是说,电源不足或电容器损坏会导致过多的尖峰干扰随机位。

如果我至少看到一个红色错误,那么我开始寻找在使用硬件之前应删除/修复的问题。


1
尽管这可能是有用的信息,但不能回答原始问题。
blm

0

鉴于这一点,经过一遍,它显示Pass complete, no errors, press Esc to exit,我一直认为这已经足够。

在此处输入图片说明


6
错误,如果确实如此,那么memtest会不会在一次通过后自动停止,而不是让我们永远进行测试?
问题溢流时间

@QuestionOverflow:我不知道,会吗?
Der Hochstapler
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.