1. 程式人生 > >Linux下測試CPU性能

Linux下測試CPU性能

config fig 終端 9.png dsta image ins 負載 make

一、安裝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性能