Linux查看多核CPU利用率
1.top
使用權(quán)限:所有使用者
使用方式:top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]
說(shuō)明:即時(shí)顯示process的動(dòng)態(tài)
d :改變顯示的更新速度,或是在交談式指令列( interactive command)按s
q :沒有任何延遲的顯示速度,如果使用者是有superuser的權(quán)限,則top將會(huì)以最高的優(yōu)先序執(zhí)行
c :切換顯示模式,共有兩種模式,一是只顯示執(zhí)行檔的名稱,另一種是顯示完整的路徑與名稱S :累積模式,會(huì)將己完成或消失的子行程( dead child process )的CPU time累積起來(lái)
s :安全模式,將交談式指令取消,避免潛在的危機(jī)
i :不顯示任何閑置(idle)或無(wú)用(zombie)的行程
n :更新的次數(shù),完成后將會(huì)退出top
b :批次檔模式,搭配"n"參數(shù)一起使用,可以用來(lái)將top的結(jié)果輸出到檔案內(nèi)
范例:
顯示更新十次后退出;
top -n 10
使用者將不能利用交談式指令來(lái)對(duì)行程下命令:
top -s
將更新顯示二次的結(jié)果輸入到名稱為top.log的檔案里:
top -n 2 -b < top.log
?
#top
如果不按1,在top視圖里面顯示的是所有cpu的平均值
在top基本視圖中,按鍵盤數(shù)字1,可監(jiān)控每個(gè)邏輯CPU的狀況:
第一行:
?— 當(dāng)前系統(tǒng)時(shí)間
?days — 系統(tǒng)已經(jīng)運(yùn)行了N天N小時(shí)N分鐘(在這期間沒有重啟過(guò))
2 users — 當(dāng)前有2個(gè)用戶登錄系統(tǒng)
load average: 1.17, 1.86, 1.59 — load average后面的三個(gè)數(shù)分別是1分鐘、5分鐘、15分鐘的負(fù)載情況。
load average數(shù)據(jù)是每隔5秒鐘檢查一次活躍的進(jìn)程數(shù),然后按特定算法計(jì)算出的數(shù)值。如果這個(gè)數(shù)除以邏輯CPU的數(shù)量,結(jié)果高于5的時(shí)候就表明系統(tǒng)在超負(fù)荷運(yùn)轉(zhuǎn)了。
第二行:
Tasks — 任務(wù)(進(jìn)程),系統(tǒng)現(xiàn)在共有164個(gè)進(jìn)程,其中處于運(yùn)行中的有2個(gè),162個(gè)在休眠(sleep),stoped狀態(tài)的有0個(gè),zombie狀態(tài)(僵尸)的有0個(gè)。
第三行:cpu狀態(tài)
us — 用戶空間占用CPU的百分比。
sy — 內(nèi)核空間占用CPU的百分比。
ni — 改變過(guò)優(yōu)先級(jí)的進(jìn)程占用CPU的百分比
id — 空閑CPU百分比
wa — IO等待占用CPU的百分比
hi — 硬中斷(Hardware IRQ)占用CPU的百分比
si — 軟中斷(Software Interrupts)占用CPU的百分比
第四行:內(nèi)存狀態(tài)
total — 物理內(nèi)存總量
used — 使用中的內(nèi)存總量
free — 空閑內(nèi)存總量
buffers — 緩存的內(nèi)存量
第五行:swap交換分區(qū)
total — 交換區(qū)總量
used — 使用的交換區(qū)總量
free — 空閑交換區(qū)總量
cached — 緩沖的交換區(qū)總量
第七行以下:各進(jìn)程(任務(wù))的狀態(tài)監(jiān)控
PID — 進(jìn)程id
USER — 進(jìn)程所有者
PR — 進(jìn)程優(yōu)先級(jí)
NI — nice值。負(fù)值表示高優(yōu)先級(jí),正值表示低優(yōu)先級(jí)
VIRT — 進(jìn)程使用的虛擬內(nèi)存總量,單位kb。VIRT=SWAP+RES
RES — 進(jìn)程使用的、未被換出的物理內(nèi)存大小,單位kb。RES=CODE+DATA
SHR — 共享內(nèi)存大小,單位kb
S — 進(jìn)程狀態(tài)。D=不可中斷的睡眠狀態(tài) R=運(yùn)行 S=睡眠 T=跟蹤/停止 Z=僵尸進(jìn)程
%CPU — 上次更新到現(xiàn)在的CPU時(shí)間占用百分比
%MEM — 進(jìn)程使用的物理內(nèi)存百分比
TIME+ — 進(jìn)程使用的CPU時(shí)間總計(jì),單位1/100秒
COMMAND — 進(jìn)程名稱(命令名/命令行)
敲擊鍵盤“b”(打開/關(guān)閉加亮效果);
敲擊鍵盤“x”(打開/關(guān)閉排序列的加亮效果),
?
敲擊“f”鍵,top進(jìn)入另一個(gè)視圖,在這里可以編排基本視圖中的顯示字段。
2.mpstat
要查看cpu波動(dòng)情況的,尤其是多核機(jī)器上。該命令可間隔2秒鐘采樣一次CPU的使用情況,每個(gè)核的情況都會(huì)顯示出來(lái)。
#mpstat -P ALL 2 5
?
3.proc
#cat /proc/cpuinfo
?
查看內(nèi)存
#cat /proc/meminfo
?
4.vmstat
r表示運(yùn)行隊(duì)列的大小,
b表示由于IO等待而block的線程數(shù)量,
in表示中斷的數(shù)量,
cs表示上下文切換的數(shù)量,
us表示用戶CPU時(shí)間,
sys表示系統(tǒng)CPU時(shí)間,
wa表示由于IO等待而是CPU處于idle狀態(tài)的時(shí)間,
id表示CPU處于idle狀態(tài)的總時(shí)間。
#vmstat
?
Linux查看進(jìn)程內(nèi)存狀況
參考:http://blog.csdn.net/linghao00/article/details/8059244
總結(jié)
以上是生活随笔為你收集整理的Linux查看多核CPU利用率的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 为什么栈和堆的生长方向不一样
- 下一篇: Linux查看进程内存状况