大多数时候是软件的Bug,但是... 有时候的确是硬件的问题!

在我们性能最好的服务器中,有一台是从之前的64位测试项目中遗留下来的。那台机器配有皓龙250双核处理器,内存有8 GB。服役了一年之后,那种配置仍然是相当不错的。它还有贴心的升级方案可选:它的泰安Thunder K8W主板最多能支持16GB内存,也能支持最新的皓龙双核处理器。

然后,我们把这台机器配成了虚拟机,让它跑Windows Server 2003 x64。可是,我们碰到了一些诡异的情况:

  • 虚拟服务器总是报告一种古怪的出错消息:“这台机器的一些节点没有本地内存。这可能导致虚拟机性能下降。”
  • 这台机器时不时会自动重启。

这台服务器我们已经使用了一年多,之前从来没有碰到过这些问题。上述诡异现象是在我们改变它的用途后才开始出现的。

为了解决问题,我们采取的第一招是:将机器的BIOS升级到最新版本,并且确保我们为所有的64位芯片和平台安装了最新的驱动程序。在排除故障的过程中,这一步的成效首屈一指——这相当于给硬件吃了两片阿司匹林(解热镇痛药),并且设置了晨间的叫醒服务。果不其然,“这台机器的一些节点没有本地内存”的错误消失了。然而,纵然我们安装了最新的BIOS和驱动程序,这台机器还是时不时地在半夜重启。

到这时候,我开始怀疑是硬件问题了。排除硬件的稳定性故障可能比较困难。不过,如果用对了工具(比如Memtest86+和Prime95),你也许能事半功倍

1.用Memtest86+测试内存的稳定性

之所以用Memtest86+,是因为我们已经怀疑是内存问题了。Memtest86+不是诊断内存问题的唯一工具,但它可能是最出名的。微软也提供了类似的工具,用起来大同小异。Memtest86+在它的官方网站(http://www.memtest.org/#downiso)上有多种形式供用户下载。我们选择了ISO镜像,然后把它刻到一张CD上。用这张CD启动机器,测试随后就自动开始了。


检测完4GB的内存花了大概30~45分钟。在顶部右侧的进度条可以为你指示整个测试将运行多长时间。在一轮标准的测试过程中,总共会进行8次测试。注意了,在首次测试通过之后就会有报告输出!

2.用Prime95测试CPU的稳定性

在电脑稳定性测试的众多工具中,我对Prime95情有独钟。让Prime95在你的电脑上跑一晚上,如果通不过,那你的机器肯定有硬件问题。(出问题的往往不是CPU本身,通常是与之相关的散热或电力供应设备的故障。)尽管Prime95主要测的是CPU,但它在内存测试方面也相当不错。你可以打开Options(选项)菜单,然后选择Torture Test(耐力测试)。

  • 如果你只想测试CPU的稳定性,那就选择“Small FFTs”。
  • 如果你想同时测CPU和内存的稳定性,那就选择“Blend”。

如果你的机器是双CPU的(或者有4个CPU),为了测到每个CPU,你必须运行Prime95的多个实例。最简单的方法就是把包含Prime95的文件夹复制多份,然后在各个独立的文件夹中运行Prime95的EXE文件。你可能想通过任务管理设置每个Prime95实例与所测CPU的关系,不过你大可以放心,调度程序会自动把所有CPU安排得妥妥当当。

一点小小的警告:当Prime95提示说“lots of RAM tested”(测试大量内存),他们可没开玩笑哦!我们的服务器只装了4 GB的内存,我们尝试了运行两个Prime95的实例,并且让它们工作在“Blend”(混合)模式下,结果我们差一点把虚拟内存文件撑爆了——两个实例都分配了6 GB的内存!


根据我的经验,如果你的CPU或内存不稳定,Prime95几乎会立即报错而停止工作。这对于故障排除来说是绝佳的,因为你很快就知道了问题的所在。如果你让Prime95在“SmallFFTs”模式下运行一个小时(而不出问题),很可能你的CPU就是没有问题。如果你让它跑一晚上都没事,那么CPU问题绝对可以排除在外。

回来再说说我们那台“任性的”服务器吧。Memtest86+诊断出来是“偶发的、间歇性内存问题”。但我们让Prime95在“Blend”模式下运行时,它总是立刻报错。而如果让Prime95切换到“Small FFTs”模式,即使我们启动两个实例,并让它们运行一个小时,结果还是安然无恙。很明显就是内存问题了!通过组合使用Memtest86+和Prime95,我们最终发现,我们的服务器在安装4 GB内存时非常稳定,而当我们把内存增加到8 GB时,机器就通不过测试了。

考虑到8GB大的内存对于虚拟服务器来说是至关重要的,我们不能通过减少内存来解决问题。直觉告诉我,我应该在BIOS里把内存速度从200MHz降到166 MHz。果然,Prime95和Memtest86+的测试都顺利通过了。

尽管软件是不可靠的(这已经臭名昭著了),但我们不能总是把矛头指向软件。有时候,你面对的确确实实是一个硬件问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值