Linux高效能伺服器診斷工具(01) mpstat命令 - 報告處理器相關統計資訊
簡介
一般今天的計算機都支援多個處理器。即使膝上型電腦通常也是1個物理處理器,內建2個核心;筆者使用的HP伺服器,已經可以支援2個物理處理器,每個處理器上可以達到14個核心(Xeon E5-2660v4 (2.0GHz/14-core))。在伺服器端,更多的處理器或核心意味著更多的計算能力。但另一方面,也更耗電。你可能會發現一個情況,當你的CPU利用率很高,但你覺得你沒有執行什麼應用。在Linux系統上,您可以使用mpstat來監視這個活動。
mpstat是什麼
mpstat用於監視系統上的CPU利用率。如果你的系統有多個處理器,那將會更有用。第一個處理器將被標記為CPU 0,第二個將被標記為CPU 1等等。從手冊頁中,mpstat被描述為:
mpstat命令每個可用處理器活動寫入標準輸出,處理器0是第一個。所有處理器之間的全域性平均活動也被報告。 mpstat命令可以在SMP和UP機器上使用,但是在後者中只能列印全域性的平均活動。如果沒有選擇任何活動,則預設報告是CPU利用率報告。
mpstat的安裝
在Ubuntu 16.04版本上,可以通過下列的命令來安裝mpstat:
sudo apt-get install sysstat
如何執行mpstat
只需在控制檯上輸入mpstat來執行mpstat。在筆者的筆記本上輸出為:
hadoop@bob-thinkpad:~$ mpstat
Linux 4.10.0-42-generic (bob-thinkpad) 2017年12月14日 _x86_64_ (4 CPU)
18時47分48秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
18時47分48秒 all 1.10 0.01 0.57 0.44 0.00 0.01 0.00 0.00 0.00 97.87
以下是如何閱讀上述資訊:18時47分48秒:表示mpstat執行的時間
all:表示所有的CPU
%usr:顯示在使用者級別執行時發生的CPU利用率百分比(應用程式)
%nice:顯示在使用者級別執行時出現的CPU利用率百分比,具有nice優先順序
%sys:顯示在系統級別執行時發生的CPU利用率百分比(核心)
%iowait:顯示CPU或CPU處於空閒狀態的時間百分比,在此期間系統有一個顯著的磁碟I / O請求
%irq:顯示CPU或CPU花費在服務硬體中斷上的時間百分比
%soft:顯示CPU或CPU花費在服務軟體中斷上的時間百分比
%steal:顯示當虛擬機器管理程式正在維護另一個虛擬處理器時,由虛擬CPU或CPU自願等待的時間百分比
%guest:顯示CPU或CPU執行虛擬處理器的時間百分比
%idle:顯示CPU或CPU閒置的時間百分比,系統沒有顯著的磁碟I / O請求
顯示每個處理器的CPU利用率
從上面的顯示資訊中,你可以看到我使用的系統有4個CPU。你可以使用-P引數,跟CPU編號來顯示指定CPU的利用率:
Linux 4.10.0-42-generic (bob-thinkpad) 2017年12月16日 _x86_64_ (4 CPU)
19時57分26秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
19時57分26秒 0 0.70 0.00 0.35 0.52 0.00 0.00 0.00 0.00 0.00 98.43
顯示所有CPU利用率
使用-P ALL引數可以顯示所有CPU的利用率。
hadoop@bob-thinkpad:~$ mpstat -P ALL
Linux 4.10.0-42-generic (bob-thinkpad) 2017年12月16日 _x86_64_ (4 CPU)
20時02分02秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
20時02分02秒 all 0.54 0.00 0.32 0.58 0.00 0.01 0.00 0.00 0.00 98.54
20時02分02秒 0 0.70 0.00 0.35 0.51 0.00 0.00 0.00 0.00 0.00 98.44
20時02分02秒 1 0.45 0.01 0.21 0.87 0.00 0.04 0.00 0.00 0.00 98.42
20時02分02秒 2 0.64 0.00 0.40 0.52 0.00 0.00 0.00 0.00 0.00 98.44
20時02分02秒 3 0.38 0.00 0.32 0.44 0.00 0.00 0.00 0.00 0.00 98.86
使用間隔列印CPU利用率
您可能想要檢視CPU利用率的變化。要做到這一點,你可以使用間隔選項。下面的例子是設定間隔週期為3秒,採集2次的執行結果:
hadoop@bob-thinkpad:~$ mpstat -P ALL 3 2
Linux 4.10.0-42-generic (bob-thinkpad) 2017年12月16日 _x86_64_ (4 CPU)
20時13分54秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
20時13分57秒 all 0.75 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.25
20時13分57秒 0 0.34 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.66
20時13分57秒 1 0.67 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.33
20時13分57秒 2 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
20時13分57秒 3 1.98 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 98.02
20時13分57秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
20時14分00秒 all 0.83 0.00 0.08 0.00 0.00 0.00 0.00 0.00 0.00 99.08
20時14分00秒 0 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
20時14分00秒 1 0.33 0.00 0.33 0.33 0.00 0.00 0.00 0.00 0.00 99.00
20時14分00秒 2 0.34 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.66
20時14分00秒 3 2.30 0.00 0.33 0.00 0.00 0.00 0.00 0.00 0.00 97.38
Average: CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle
Average: all 0.79 0.00 0.04 0.00 0.00 0.00 0.00 0.00 0.00 99.17
Average: 0 0.17 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.83
Average: 1 0.50 0.00 0.17 0.17 0.00 0.00 0.00 0.00 0.00 99.17
Average: 2 0.17 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.83
Average: 3 2.14 0.00 0.16 0.00 0.00 0.00 0.00 0.00 0.00 97.70
相關文章
- [Linux]字元處理相關命令Linux字元
- solaris10_相關命令_處理器_相關
- Oracle 統計資訊相關命令彙總Oracle
- 如何診斷伺服器關閉的原因伺服器
- 快速上手Linux核心命令(七):Linux系統資訊相關命令Linux
- 在redhat上安裝dell伺服器診斷工具Redhat伺服器
- 關於老鼠撞斷大象肋骨的調查處理報告
- Linux vmstat 命令 - 報告虛擬記憶體統計的工具Linux記憶體
- 幾個與文字處理相關的Linux命令總結Linux
- openGauss 支援WDR診斷報告
- Oracle 系統效能變慢常規處理診斷及定位處理方法Oracle
- 一秒內診斷 Linux 伺服器的效能Linux伺服器
- linux監控CPU命令-mpstatLinux
- MYTFA(MYSQL 診斷資訊收集工具)介紹MySql
- Linux檢視相關係統資訊Linux
- 【SCRIPT】Oracle統計資訊相關SQLOracleSQL
- 一張圖記住常用Linux系統效能診斷工具Linux
- 加固高效能異構資料處理伺服器伺服器
- HP-UX執行Oracle相關命令報錯Memory fault(coredump)分析處理UXOracle
- linux報告虛擬記憶體統計資訊-vmstatLinux記憶體
- 處理鎖住的統計資訊
- GreatSQL統計資訊相關知識點SQL
- 【Linux系統】fdisk相關分割槽命令。Linux
- redis 伺服器的統計資訊Redis伺服器
- 收集Oracle RAC跟蹤診斷資訊的幾個工具Oracle
- oracle 效能診斷工具Oracle
- Linux系統程式設計之訊號中斷處理(下)Linux程式設計
- Linux系統程式設計之訊號中斷處理(上)Linux程式設計
- 『忘了再學』Shell基礎 — 31、字元處理相關命令字元
- 關於aud$物件相關處理物件
- Linux 相關scsi命令Linux
- linux 安全相關命令Linux
- Linux 核心相關命令Linux
- [JVM] 應用診斷工具之Fastthread(線上診斷)JVMASTthread
- iostat -x命令診斷iOS
- win10系統如何禁用診斷工具Win10
- 技術分享 | MySQL Shell 收集 MySQL 診斷報告(上)MySql
- HttpServer伺服器命令處理通訊架構HTTPServer伺服器架構