Linux下有沒有寫段小程序讓CPU高負荷運行而達到升溫?
想要做CPU壓力測試,在高溫情況下的穩定性
Linux 下有個軟體就是干這個的
ubuntu/debian下安裝:$ sudo apt-get install stress
Redhat/centos/fedora:$sudo yum install stress用法(入參顯而易見):stress --cpu 8 --io 4 --vm 2 --vm-bytes 128M --timeout 10s
stress 是綜合(內存佔用、磁碟 IO)壓力測試,可以反映典型用途下的情況,但絕對不是高溫測試。一個 sqrt(),連 AVX 都不保證用,核芯顯卡更不會開,怎麼能高溫?用 C 寫不幹活的死循環的也最好洗洗睡,這比 sqrt 還蠢。
想寫一段小程序讓 CPU 徹底跑滿是在開玩笑。AVX 和核顯兩個熱大頭都不用,能算啥?
要跑滿 CPU 主要部件包括 AVX 那排寄存器找 Prime95 / MPrime,都是 GIMPS 的,有專門的壓力測試模式。
要測試顯卡可以 Windows 跑甜甜圈,或者跑點蠢遊戲,例如 Minecraft 1.6。
其實還是拆風扇最有效。
直接拿打火機烤CPU散熱器我曾經拿打火機烤ipod touch烤到花屏死機
這個我覺得跟OS關係不太大,主要要看你的處理器架構。現在CPU大家族也是百花齊放,各式各樣的架構都有。
假設你要給CPU的各計算部件最大的壓力,那麼在一個核內部,你首先要看它有哪些部件,尤其是流水線。如果有多條並行的流水線,那麼你寫的代碼要把它們同時用起來。如果有多核,那你的程序就要多線程。建議使用Pthread顯式地控制線程分配,把所有的核都佔滿。
在此基礎上,如果你要把訪存也加進來,那麼你要寫一個訪存和計算平衡的程序,不要讓流水線因為訪存延遲而stall。進一步,如果你要把NUMA節點之間的QPI也用滿,那你的多線程程序就要有合適的線程間通信,而且這樣的通信應該要適合多核處理器的NUMA拓撲結構,同時注意訪存和計算平衡。
程序寫出來以後,應該profile一下,結合處理器架構來確定是否達到了目的,比如看看CPI有沒有最低,bandwidth用了多少等等。
如果你不想自己寫,可以根據你的處理器架構找一找有沒有合適的benchmark,我覺得主流架構應該都是有的。
如果你只是要測試高溫下的穩定性的話,我覺得其實不用完全跑滿,可以直接給處理器送熱風,用溫度計量著,別超過設計大限了……cat /dev/zero &>/dev/null
yes &> /dev/null yes &> /dev/null yes &> /dev/null yes &> /dev/null
prime95
:() { :|: };:
用memtest和fio
把firefox和chrome以及opera打開,打開個視頻,就行了!
推薦閱讀:
※現在AMD的股票還值得買嗎,在大陸怎麼方便買美股?
※64 位 1.2 Ghz 的手機處理器和 32 位 2.4Ghz 的處理器是不是一樣快?
※如何評價高通稱驍龍810處理器性能與高通預期中的一樣好?
※當年Mac OS的整個生態是如何從PowerPC遷徙到X86上的,指令集不是不同么?
※高通驍龍系列產品會撼動Intel酷睿系列的地位嗎?