- 使用
top
命令查看各个进程的使用情况,默认按CPU使用率排序。
# 如下命令可以查看该进程下各个线程的cpu使用情况:查询结果中的"PID"列即为各个线程ID
top -Hp PID
-
top
命令的使用率超过 100% ,主要的原因是 top
命令显示的是程序占用的cpu的总数,2核cpu最高占用率可达200%,top视图显示的是把所有使用率加起来的总数。
top - 22:15:19 up 3 min, 1 user, load average: 0.08, 0.13, 0.06
Tasks: 112 total, 4 running, 108 sleeping, 0 stopped, 0 zombie
# 在使用top命令动态显示相关信息后,按“数字1”可以将所有的CPU信息呈现出来
%Cpu0 : 0.0 us, 2.0 sy, 0.0 ni, 98.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
%Cpu1 : 1.0 us, 1.0 sy, 0.0 ni, 98.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1867048 total, 406548 free, 1193512 used, 266988 buff/cache
KiB Swap: 2097148 total, 2097148 free, 0 used. 478924 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
484 root 20 0 36880 4028 3712 S 120.0 0.2 0:02.78 systemd-journal
1626 root 20 0 157848 2176 1524 R 1.0 0.1 0:00.12 top
1 root 20 0 128232 6844 4084 S 0.0 0.4 0:00.98 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 0:00.02 ksoftirqd/0
- 补充CPU总核数 与 总逻辑CPU数的计算,实际上有多少个cpu信息直接通过在
top
命令中按数字1就可以展示出来了。
-
CPU总核数 = 物理CPU个数 X 每颗物理CPU的核数
-
总逻辑CPU数 = 物理CPU个数 X 每颗物理CPU的核数 X 超线程数
# 查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq
# 查看逻辑CPU的个数
cat /proc/cpuinfo| grep "processor"| wc -l
# 查看CPU信息(型号)
cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c
网友评论