linux怎么查看進(jìn)程在哪個(gè)cpu上
查看方法:1、利用top命令,該命令可以顯示進(jìn)程在哪個(gè)CPU上運(yùn)行,語法為“top -p 進(jìn)程號(hào)”;2、利用taskset命令,該命令用于查看進(jìn)程或線程運(yùn)行在哪個(gè)CPU上,語法為“taskset -p 進(jìn)程號(hào)”。
程序員必備接口測試調(diào)試工具:立即使用
Apipost = Postman + Swagger + Mock + Jmeter
Api設(shè)計(jì)、調(diào)試、文檔、自動(dòng)化測試工具
后端、前端、測試,同時(shí)在線協(xié)作,內(nèi)容實(shí)時(shí)同步
本教程操作環(huán)境:Linux7.3系統(tǒng)、Dell G3電腦。
linux怎么查看進(jìn)程在哪個(gè)cpu上
方法一:使用top命令
top 命令可以顯示進(jìn)程在哪個(gè)CPU上運(yùn)行,可以連續(xù)監(jiān)視隨著時(shí)間的改變,該進(jìn)程運(yùn)行在哪個(gè)cpu上是否發(fā)生變化。
使用步驟:
top -p [進(jìn)程號(hào)],例如 top -p 3000
按下"F"鍵,使用上下鍵選擇P = Last Used Cpu,并按下空格鍵,出現(xiàn) “*”即代表選中,再按“q"退出。
方法二:使用taskset命令
taskset可以查看具體某一進(jìn)程(或 線程)運(yùn)行在哪個(gè)cpu上,也可以使某個(gè)程序運(yùn)行在某個(gè)或某些cpu上
taskset 參數(shù)選項(xiàng):
(1)-p, --pid :操作現(xiàn)有的PID,不啟動(dòng)新任務(wù)
(2)-c, --cpu-list :指定處理器的數(shù)字列表,而不是位掩碼。列表可以包含多個(gè)項(xiàng)目,以逗號(hào)和范圍分隔。例如,0、5、7、9 - 11。
1)顯示進(jìn)程運(yùn)行的CPU: -p參數(shù)
例子1:
[root@localhost ~]# taskset -p 21184
顯示結(jié)果:
pid 21184’s current affinity mask: ffffff
注:21184是進(jìn)程編號(hào)。顯示結(jié)果的ffffff實(shí)際上是二進(jìn)制24個(gè)低位均為1的bitmask,每一個(gè)1對(duì)應(yīng)于1個(gè)CPU,表示該進(jìn)程在24個(gè)CPU上運(yùn)行。
例子2:
[root@localhost ~]# taskset -p 2030
顯示結(jié)果:
pid2030’s current affinity mask: f
注:說明sshd在4顆CPU上隨機(jī)進(jìn)行切換。
例子3:
[root@localhost ~]# taskset -p 2726
顯示結(jié)果:
pid 2726’s current affinity mask: 3
注:顯示的十進(jìn)制數(shù)字3轉(zhuǎn)換為2進(jìn)制為最低兩個(gè)是1,每個(gè)1對(duì)應(yīng)一個(gè)cpu,所以進(jìn)程運(yùn)行在2個(gè)cpu上。
*注意:*cpu的標(biāo)號(hào)是從0開始的,所以cpu1表示第二個(gè)cpu(第一個(gè)cpu的標(biāo)號(hào)是0)。
關(guān)于換算方式
8個(gè)核心的CPU ID: 7 6 5 4 3 2 1 0
對(duì)應(yīng)10的十進(jìn)制數(shù)位: 128 64 32 16 8 4 2 1
十六進(jìn)制的16個(gè)數(shù)是:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F
對(duì)應(yīng)每一個(gè)16進(jìn)制的二進(jìn)制位:0=0000,1=0001,2=0010,3=0011,4=0100,5=0101,6=0110,7=0111,8=1000,9=1001,A=1010,
B=1011,C=1100,D=1101,E=1110,F=1111
那么例如出現(xiàn)pid 8987’s current affinity mask: ff ff是16進(jìn)制,轉(zhuǎn)換二進(jìn)制:11111111,意思就是sshd在8個(gè)CPU上進(jìn)行卻換!所以對(duì)應(yīng)每一個(gè)數(shù)值!
比如說16進(jìn)制的40,那么轉(zhuǎn)換二進(jìn)制01000000,意思就是在第7塊CPU上運(yùn)作
推薦學(xué)習(xí):Linux視頻教程
以上就是linux怎么查看進(jìn)程在哪個(gè)cpu上的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注其它相關(guān)文章!
版權(quán)聲明:
本站所有文章和圖片均來自用戶分享和網(wǎng)絡(luò)收集,文章和圖片版權(quán)歸原作者及原出處所有,僅供學(xué)習(xí)與參考,請(qǐng)勿用于商業(yè)用途,如果損害了您的權(quán)利,請(qǐng)聯(lián)系網(wǎng)站客服處理。