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過載。
Linux下測試CPU性能