mpstat
- 報告處理器相關的統計數據
格式
mpstat [ -A ] [ -u ] [ -V ] [ -I { keyword [,...] | ALL } ] [ -P { cpu [,...] | ON | ALL } ] [ interval [ count ] ]
描述
-
mpstat命令向標準輸出寫每個可以訪問到的處理器的活動情況,第一個是處理器0
-
在所有處理器之間的全局平均活動數也會被報告
-
mpstat命令可以用於SMP和UP機器,但是在後者中,僅有全局平均活動被打印出來。
-
如果沒有活動被選擇,默認的報告是CPU使用率報告。
-
interval參數指定在每個報告之間的時間間隔,單位是秒。 如果是0,則指定處理器的統計數據是從系統啓動開始的。
-
count參數可以和interval參數一起指定,如果count參數沒有設爲0的話。
-
count的數值決定了以interval秒間隔的生成的報告的數量。
-
如果interval參數沒有指定count則mpstat命令持續生成報告。
選項
- -A 這個選項等於指定了-u -I ALL -P ALL
- -I {keyword [,…] | ALL}
- 報告中斷Interrupt統計數據
- 可能的關鍵字是SUM CPU SCPU
- SUM mpstat命令報告每個處理器的中斷總數,會顯示下面兩個值
- CPU 處理器編號,顯示的all指出統計數據是計算的所有的處理器之間的一個平均值
- intr/s 展示CPU或者多個CPU每秒總的中斷的數量
- CPU
- 使用CPU關鍵字,CPU每秒收到的中斷數展示出來
- 中斷是列在/proc/interrupts文件中的那些中斷
- SCPU
- 使用SCPU關鍵字,CPU每秒收到的軟中斷數展示出來
- 這個選項只有在2.6.31內核及以後的版本纔會生效
- 軟中斷是那些列在/proc/softirqs文件中的
- ALL 關鍵字相當於是指定了以上所有的關鍵字,因此所有的中斷的統計數據都會展示
- SUM mpstat命令報告每個處理器的中斷總數,會顯示下面兩個值
- -P {cpu [,…] | ON | ALL}
- 指明要統計報告的CPU的編號
- cpu這個是處理的編號,注意0是第一個處理器
- ON關鍵字指明統計數據是爲每一個在線的處理器報告的。
- ALL關鍵字指明統計數據是爲所有的處理器報告的
- -u 報告CPU使用率,下面的值會被展示
- CPU 處理器編號,all指出統計數據是在所有的處理器中取的平均值
- %usr 在用戶層(應用程序)執行時佔用的CPU使用率
- %nice 在用戶層(應用程序)執行時佔用的帶有nice優先級的CPU使用率
- %sys 在系統層(內核層)執行時佔用的CPU使用率,注意這個並不含花在服務硬件和軟件中斷上的時間
- %iowait 展示系統有未完成的磁盤IO請求導致的CPU空閒的百分比
- %irq 展示CPU服務硬件中斷(hardware interrupts)花的時間的百分比
- %soft 展示CPU服務軟件中斷(software interrupts)花的時間的百分比
- %steal 展示當虛擬機管理程序服務其他虛擬處理器的時候,虛擬CPU在非自願等待中花費的時間的百分比。
- %guest 展示CPU運行虛擬處理器花費的時間的百分比
- %gnice 展示時間的百分比
- %idle 展示CPU空閒並且系統沒有未完成的IO請求佔的時間的百分比
- 注意:
- 在SMP機器上一個沒有任何活動的處理器是一個禁用的處理器(offline)
- -V 打印版本並退出
環境變量
- mpstat 命令考慮下面的環境變量
- S_COLORS
- 當設置了這個環境變量,在終端上用彩色展示統計數據。可用never always auto(默認值)
- 注意展示值的不同的顏色並明確表示什麼特殊含義,僅僅指示不同的值的範圍。
- S_COLORS_SGR
- 指定顏色和其他的屬性用於在終端上展示統計數據。 值是一個冒號分隔的列表,默認值爲
H=31;1:I=32:M=34;1:N=33:1Z=33;22
- S_TIME_FORMAT
- 用來控制輸出的首行的時間的格式的
- 如果這個變量存在並且值爲ISO,那麼,當前的本地化設置將會被忽略。mpstat命令會使用ISO8601格式化(YYYY-MM-DD)。