ps utility in linux (procps), how to check which CPU is used
它是关于
它可以打印每个进程(线程)的最后使用的CPU数量吗?
更新:不是CPU时间(10秒),而是CPU NUMBER(CPU0,CPU5,CPU123)
ps(1)手册页说你可以使用
1 psr PSR processor that process is currently assigned to.
1 2 3 4 | $ ps -o pid,psr,comm PID PSR COMMAND 7871 1 bash 9953 3 ps |
或者您可以使用
1 2 3 4 | $ ps -o pid,cpuid,comm PID CPUID COMMAND 7871 1 bash 10746 3 ps |
两个名称的原因是为了与Solaris(
要获取线程,请添加
没有线程:
1 2 3 4 5 | $ ps -U $USER -o pid,psr,comm | egrep 'chromi|PID' | head -4 PID PSR COMMAND 6457 3 chromium-browse 6459 0 chromium-browse 6461 2 chromium-browse |
有线程:
1 2 3 4 5 | $ ps -U $USER -L -o pid,lwp,psr,comm | egrep 'chromi|PID' | head -4 PID LWP PSR COMMAND 6457 6457 3 chromium-browse 6457 6464 1 chromium-browse 6457 6465 2 chromium-browse |
还有一个未记录的
1 2 3 4 5 | $ ps -U $USER -LP | egrep 'chromi|PID' | head -4 PID LWP PSR TTY TIME CMD 6457 6457 3 ? 00:01:19 chromium-browse 6457 6464 1 ? 00:00:00 chromium-browse 6457 6465 2 ? 00:00:00 chromium-browse |
也被低估了:
1 | mpstat -I ALL 1 | less -SR |
哪个多处理器?根据联机帮助页,它没有为此提供选项。但是在我的Debian稳定系统上,它接受了未记录的
在查看源和
'cpu'应该按照output.c中的这个注释工作,但是它当前与'nop'输出pr_nop()相关联:
我在Arch上这样做了,它可以帮助那里的人:
1 | ps -C"process" -L -o pid,lwp,pcpu,cpuid,time |
- -C:选择名为"process"的进程
- -L:列出进程线程
-
-o:指定输出信息
- pid:进程ID
- lwp:轻量级进程(线程)
- pcpu:CPU使用率(百分比)
- cpuid:CPU ID
- 时间:线程时间(从开始)