mpstat 是Multiprocessor Statistics的縮寫,是一種實時系統監控工具。mpstat命令會輸出CPU的一些統計信息,這些信息存放在/proc/stat文件中。在多CPU的系統裏,此命令不但能用來查看全部CPU的平均情況信息,並且還可以用來查看特定CPU的信息。
mpstat命令的最大特色是:能夠查看多核心CPU中每一個計算核心的統計數據,而相似命令vmstat只能查看系統總體的CPU狀況。
mpstat [option] [delay [count]]
mpstat命令的參數選項及說明
-P 指定CPU編號,例如:
-P 0表示第一個CPU
-P 1表示第二個CPU
-P ALL表示全部CPU
顯示CPU信息統計。
[root@cs6 ~]# mpstat
Linux 2.6.32-754.el6.x86_64 (cs6) 2019年05月05日 _x86_64_ (2 CPU)
16時38分37秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
16時38分37秒 all 0.17 0.00 0.18 0.03 0.00 0.00 0.00 0.00 99.62
[root@cs6 ~]# mpstat 5 6
Linux 2.6.32-754.el6.x86_64 (cs6) 2019年05月05日 _x86_64_ (2 CPU)
16時39分02秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
16時39分07秒 all 0.00 0.00 0.10 0.00 0.00 0.00 0.00 0.00 99.90
16時39分12秒 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
16時39分17秒 all 0.00 0.00 0.10 0.00 0.00 0.00 0.00 0.00 99.90
16時39分22秒 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
16時39分27秒 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
16時39分32秒 all 0.00 0.00 0.10 0.00 0.00 0.00 0.00 0.00 99.90
平均時間: all 0.00 0.00 0.05 0.00 0.00 0.00 0.00 0.00 99.95
如下是命令結果的詳細說明。
第1列:
16時39分02秒,表示當前時間。
第2列:CPU,all表示全部CPU,0表示第一個CPU……
後面9列的含義分別以下。
%usr:用戶進程消耗的CPU時間百分比。
%nice:改變過優先級的進程佔用的CPU時間百分比。
%sys:系統(內核)進程消耗的CPU時間百分比。
%iowait:I0等待所佔用的CPU時間百分比。
%irq:硬中斷佔用的CPU時間百分比。
%soft:軟中斷佔用的CPU時間百分比。
%steal:虛擬機強制CPU等待的時間百分比。
%guest:虛擬機佔用CPU時間的百分比。
%idle:CPU處在空閒狀態的時間百分比。
顯示指定CPU信息的統計。
[root@cs6 ~]# mpstat -P 0
Linux 2.6.32-754.el6.x86_64 (cs6) 2019年05月05日 _x86_64_ (2 CPU)
16時40分51秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle
16時40分51秒 0 0.10 0.00 0.14 0.04 0.00 0.00 0.00 0.00 99.72