LinuxCpu測(cè)試穩(wěn)定的方法
測(cè)試 CPU 穩(wěn)定性的最好方法之一是Linux 內(nèi)建的 -- 內(nèi)核編譯,您可能會(huì)感到奇怪。gcc 編譯器是測(cè)試一般 CPU 穩(wěn)定性的一個(gè)很好的工具,內(nèi)核編譯將充分使用 gcc。下面是LinuxCpu測(cè)試穩(wěn)定的方法與應(yīng)急方法。
LinuxCpu測(cè)試通過在/usr/src/linux 目錄創(chuàng)建并運(yùn)行下面的腳本可以對(duì)您的機(jī)器進(jìn)行 industrial-strength 內(nèi)核編譯壓力測(cè)試:
cpubuild 腳本
#!/bin/bash
make dep
while [ "foo" = "foo" ]
do
make clean
make -j2 bzImage
if [ $? -ne 0 ]
then
echo OUCH OUCH OUCH OUCH
exit 1
fi
done
您將注意到此腳本重復(fù)編譯內(nèi)核。原因很簡單 -- 一些 CPU 有斷斷續(xù)續(xù)的小故障,使得它們?cè)?95% 的時(shí)間里順利地編譯內(nèi)核,但又不時(shí)地使內(nèi)核編譯崩潰。通常情況下,這是因?yàn)樵谔幚砥骷訜岬揭欢囟龋ㄔ谠摐囟认绿幚砥髯兊貌环€(wěn)定)之前可能進(jìn)行了 5 個(gè)或更多內(nèi)核編譯。
在上面的腳本中,注意調(diào)整 -j 選項(xiàng),使緊跟它的數(shù)字等于系統(tǒng)中 CPU 的數(shù)目加 1;換句話說,若是單處理器使用 "2",雙處理器使用 "3",依此類推。-j 選項(xiàng)告訴 make 程序行平行編譯內(nèi)核,確保在編譯每個(gè)源文件后總有至少一個(gè) gcc 進(jìn)程準(zhǔn)備就緒 -- 確保 CPU 承受的壓力達(dá)到最大。如果下午不準(zhǔn)備使用 Linux 機(jī)器,請(qǐng)繼續(xù)運(yùn)行此腳本并讓機(jī)器重新編譯內(nèi)核幾個(gè)小時(shí)。
LinuxCpu測(cè)試可能的 CPU 問題
如果腳本持續(xù)幾個(gè)小時(shí)運(yùn)行順利,祝賀您!您的 CPU 已經(jīng)通過了第一個(gè)測(cè)試。但是,上述腳本可能會(huì)意外死掉。如何知道是 CPU 有問題而不是其它的問題呢?如果 gcc 發(fā)出與下面類似的錯(cuò)誤,則很有可能是 CPU 有問題:
gcc: Internal compiler error: program cc1 got fatal signal 11
這時(shí),CPU 有三種可能的狀態(tài):
如果您輸入 "make bzImage" 重新進(jìn)行內(nèi)核編譯,并且編譯器死在同一文件上,請(qǐng)繼續(xù)一遍遍輸入 "make bzImage"。如果試了大約十次之后,編譯進(jìn)程繼續(xù)死在此特定文件上,那么問題很可能是由(很少)gcc 編譯器錯(cuò)誤引起的,該錯(cuò)誤是由此特定的源文件而不是有問題的 CPU 觸發(fā)的。但是,這些天 gcc 很穩(wěn)定,那么這種情況發(fā)生的可能性很小。
如果您輸入 "make bzImage" 重新進(jìn)行內(nèi)核編譯,并且稍后得到另一個(gè)信號(hào) 11,那么您的 CPU 很可能快要無法使用了。
如果您輸入 "make bzImage" 重新進(jìn)行內(nèi)核編譯并且內(nèi)核編譯成功,那也不意味著您的 CPU 是好的。通常這意味著僅當(dāng) CPU 升到一定的溫度以上(CPU 使用超過一定時(shí)間后會(huì)變熱,可能進(jìn)行過幾次內(nèi)核編譯后能達(dá)到此臨界點(diǎn)),CPU 故障才不時(shí)地顯露出來。
LinuxCpu測(cè)試搶救 CPU
如果您的 CPU 在重負(fù)載之下正發(fā)生隨機(jī)的斷斷續(xù)續(xù)的錯(cuò)誤,可能您的 CPU 根本沒什么問題 -- 可能只是冷卻不當(dāng)。您可以檢查下列內(nèi)容:您的 CPU 風(fēng)扇是否已插上?
它是否能相對(duì)地避免灰塵?
通電時(shí)風(fēng)扇確實(shí)旋轉(zhuǎn)(并以適當(dāng)?shù)乃俣刃D(zhuǎn))嗎?
散熱片在 CPU 上固定好了嗎?
在 CPU 和散熱片之間有導(dǎo)熱膠嗎?
您的機(jī)器通風(fēng)情況足夠好嗎?
如果一切正常,您可能希望讓此打開的機(jī)器返回到內(nèi)核編譯測(cè)試。請(qǐng)讓內(nèi)核編譯進(jìn)行大約五分鐘時(shí)間,然后將手放到這個(gè)正在運(yùn)行的機(jī)器中并觸摸周圍的供電設(shè)備的外部金屬保護(hù)外套。然后,用指尖小心地測(cè)試散熱片的溫度。如果異常地?zé)幔敲春芸赡苣纳崞L(fēng)扇組合相對(duì)于您的特定 CPU 來說不夠強(qiáng)勁。在這種情況下,升級(jí)您的系統(tǒng)冷卻硬件 --
CPU 尚未遭受任何永久性損壞并且仍然可發(fā)揮作用。
【編輯推薦】