1. 程式人生 > >Linux 系統管理命令 - mpstat - CPU資訊統計

Linux 系統管理命令 - mpstat - CPU資訊統計

命令詳解

重要星級:

        ★★★★☆

功能說明:

        mpstat 是 Multiprocessor Statistics 的縮寫,是一種實時系統監控工具。mpstat 命令會輸出 CPU 的一些統計資訊,這些資訊存放在 /proc/stat 檔案中。在多 CPU 的系統裡,此命令不但能用來檢視所有 CPU 的平均狀況資訊,而且還能用來檢視特定 CPU 的資訊。

        mpstat 命令的最大特點是:可以檢視多核心 CPU 中每個計算核心的統計資料,而類似命令 vmstat 只能檢視系統整體的 CPU 情況。

語法格式:

    mpstat [option] [delay [count]]
mpstat [選項] [時間間隔 [次數]]

mpstat [ -A ] [ -I { SUM | CPU | SCPU | ALL } ] [ -u ] [ -P { cpu [0,1...] | ON | ALL } ] [ -V ] [ interval [ count ] ]

        說明:

            1. 在 mpstat 命令及後面的選項裡,每個元素之間都至少要有一個空格。
            2. delay 表示兩次輸出之間的時間間隔。
            3. count 表示按照 delay 指定的時間間隔統計的次數。

選項說明:

-A :相當於使用-I ALL -u -P ALL

-I {SUM | CPU | SCPU | ALL} :報告中斷的統計資料
	SUM:	mpstat命令報告每個處理器的中斷總數。顯示的值如下:
	CPU:	處理器編號,all表示顯示統計資訊的值為所有處理器的平均值
	intr/s:顯示每秒接收到的CPU或CPUs的中斷總數。
	CPU:	顯示CPU每秒接收到的每個中斷的數量
	SCPU:	顯示CPU每秒接收到的每一個單獨的軟體中斷的數量,此選項僅適用於核心2.6.31和更高版本。
	ALL:	相當於指定以上所有關鍵字
-P { cpu [0,1...] | ON | ALL } :指定處理器編號顯示其統計報告 cpu: cpu為處理器編號,處理器0是所述第一個處理器。 ON: 每一個正在使用的處理器的統計報告 ALL: 所有處理器的統計報告。
-u :報告的CPU利用率,顯示的值如下: CPU: 處理器編號,all表示顯示統計資訊的值為所有處理器的平均值
例如:
1. -P 0 :表示第一個 CPU 2. -P 1 :表示第二個 CPU 3. -P ALL :表示所有 CPU

使用範例:

顯示 CPU 資訊統計 ( mpstat 5 6 ):

[[email protected] :~]# mpstat          # 如果省略 "時間間隔""次數"引數,則僅顯示一次報告後退出。
Linux 3.10.0-862.14.4.el7.x86_64 (localhost.localdomain)     2018年12月25日     _x86_64_    (2 CPU)

17時10分08秒  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
17時10分08秒  all    0.09    0.00    0.17    0.01    0.00    0.01    0.00    0.00    0.00   99.73
[[email protected] :~]# 

[[email protected] :
~]# mpstat 5 6 # 表示每5秒更新一次輸出資訊,統計6次後停止輸出。 Linux 3.10.0-862.14.4.el7.x86_64 (localhost.localdomain) 2018年12月25日 _x86_64_ (2 CPU) 17時11分45秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 17時11分50秒 all 0.10 0.00 0.20 0.00 0.00 0.00 0.00 0.00 0.00 99.70 17時11分55秒 all 0.00 0.00 0.10 0.00 0.00 0.10 0.00 0.00 0.00 99.80 17時12分00秒 all 0.10 0.00 0.20 0.00 0.00 0.00 0.00 0.00 0.00 99.70 17時12分05秒 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 17時12分10秒 all 0.10 0.00 0.20 0.00 0.00 0.00 0.00 0.00 0.00 99.70 17時12分15秒 all 0.00 0.00 0.10 0.00 0.00 0.00 0.00 0.00 0.00 99.90 平均時間: all 0.05 0.00 0.13 0.00 0.00 0.02 0.00 0.00 0.00 99.80 [[email protected] :~]#

        一下是命令結果的詳細說明:

第一行:
    第一列:Linux 3.10.0-862.14.4.el7.x86_64 (localhost.localdomain),系統核心版本及主機名稱
    第二列:2018年12月25日, 代表當前時間:受系統 date 命令的格式等影響
    第三列:CPU 架構及個數。
從第二行起:
    第一列 :%usr:   使用者程序消耗的 CPU 時間百分比。
    第二列 :%nice:  改變過優先順序的程序佔用的 CPU 時間百分比。
    第三列 :%sys:   系統( 核心 ) 程序消耗的 CPU 時間百分比。
    第四列 :%iowait:IO 等待所佔用的 CPU 時間百分比。
    第五列 :%irq:   硬中斷佔用的 CPU 時間百分比。
    第六列 :%soft:  軟中斷佔用的 CPU 時間百分比。
    第七列 :%steal: 虛擬機器強制 CPU 等待的時間百分比。
    第八列 :%guest: 虛擬機器佔用 CPU 時間百分比。
    第九列 :%idle:  CPU 處在空閒狀態的時間百分比。

 

 

資訊