Linux下測試CPU效能
一、安裝stress服務
1、下載stress_1.0.1.orig.tar.gz安裝包
2、解壓tar xvf stress_1.0.1.orig.tar.gz
3、進入解壓目錄執行./configure
4、make
5、make check
6、make install
7、make clean
二、安裝sysstat服務
1、下載sysstat-11.5.6.tar.gz安裝包
2、解壓tar xvf sysstat-11.5.6.tar.gz
3、進入解壓目錄執行./configure
4、make & make install
三、測試CPU密集型程序
1、在第一個終端輸入以下命令:stress --cpu 1 --timeout 600
2、在第二個終端輸入watch -d uptime實時檢視平均負載的變化情況:
3、在第三個終端執行mpstat檢視CPU使用率的變化情況:
在第二個終端可以看到,1分鐘的平均負載會慢慢增加到1.00,而從第三個終端可以看到正好有一個CPU的使用率為100%,但是它的iowait只有0。說明平均負載的升高正是由於CPU使用率為100%。
4、使用pidstat檢視是哪個程序導致CPU使用率為100%
可以看到,PID為3938的stress程序導致CPU使用率為100%。
四、模擬大量程序
1、在第一個終端輸入以下命令:stress -c 16 --timeout 600
2、在第二個終端輸入watch -d uptime實時檢視平均負載的變化情況:
由於系統只有4個CPU,明顯比16個程序要少,因而系統的CPU處於嚴重過載的狀態,平均負載高達16.05
3、接著再執行pidstat看下程序的情況:
可以看出,16個程序在爭搶4個CPU,每個程序等待CPU的時間(上面的%wait列)高達70%多。超出CPU計算能力,最終導致CPU過載。