使用Memtest86+测试服务器和工作站内存

我们经常被问到如何更简单地测试服务器或者是工作站的内存。因为读者想要知道如何在返还期、服务器被送到数据中心之前,进行内存测试。Memtest86+是一个测试服务器和工作站内存非常好的工具,Memtest86+用于这方面的测试已经有十多了。随着Memtest86+ 5.00 RC1的发布,不仅修补了一个非常重要的bug,在性能上也有很大的提升,这就是本文的主要内容。

测试配置

为了用Memtest86+ 5.00 RC1进行测试,我们使用配备了ASMB6 iKVM 的ASUS Z9NA-D6作为测试床。我们选择了英特尔Xeon E5-2430L作为低功耗配置的选择。我们在实验室中使用了许多低功耗的芯片,这对于web托管这类的应用非常有意义。

CPUs: 2x Intel Xeon E5-2430L

Motherboard: ASUS Z9NA-D6

Memory: 6x 4GB Kingston unbuffered ECC 1333MHz DIMMs

SSD: Corsair Force3 120GB, OCZ Vertex 3 120GB 2x OCZ Agility 3 120GB

Power Supply: Corsair AX850 850w 80 Plus Gold

Chassis: Norco RPC-4220

需要注意的是,我们使用的IPMI 2.0远程挂载功能来引导到Memtest86+ 5.00 RC1,这样就可以在一个网络当中完成测试工作。

Memtest86 +提示:注意Memtest86 + 4.20

Memtest86 + 4.20有一个已知的bug,会出现很多的假阳性(false-positive)错误。Memtest86 + 4.20版本是很重要的,因为一些Ubuntu LiveCD的映像都是跟那个版本一起出的。作为一个快速提示,4.20版本已经被放到SSD测试床当中的128GB RAM当中,而不是我们接下来将要使用的5.00RC1。

【图1】Memtest86+ 4.20 启动

可以注意到,版本的年代很明显不是具有20MB三级缓存的Pentium M。这是Memtest86+ 4.20的运行失败的很典型的例子,Memtest86+ 4.20是与Ubuntu 12.04一同发布的,存在很多错误。

【图2】Memtest86+ 4.20 错误

正如上文所提到的,这是Memtest86+ 4.20的一个已知的Bug。除了这个Bug的修正,以及测试速度的提升,是新的版本最大的两个特点。接下来,就让我们来看看Memtest86+ 5.00 RC1吧。

使用Memtest86+ 5.00 RC1测试服务器内存

第一步当然是从memtest.org上下载Memtest86+ 5.00 RC1。笔者更倾向于使用IOS版本的,因为使用IPMI引导的时候更方便。在下载完ISO (不到2MB)之后, 它可以被远程挂载到一台安装了IPMI2.0的服务器上,在实验中我们将它挂载到配备了Intel Xeon E5-2400的华硕服务器上。

【图3】测试服务器内存-下载Memtest86+的IOS

此时,可以引导至映像,并且会出现如下画面:

【图4】测试服务器内存-从Memtest86 + ISO引导并选择SMP

此时,可以按下F2来使用多线程SMP模式。如果不快速按下F2的话,Memtest86+ 5.00 RC1会默认失效安全模式,这时候会很慢,并且是单线程的。按下F2之后就可以开始测试了:

【图5】测试服务器内存-运行Memtest86+

我们可以看到,Memtest86+ 5.00 RC1在x64模式下运行,并且正确地显示这不是Pentium M。同时可以显示基本的系统信息。可以看到多核、多线程RAM显示在核数和状态栏当中。

可以让他继续运行,对老化的RAM执行一个简单的测试。此外,配置选择可以通过点击c和导航按钮选项来选择。