有时发先系统的响应速度变慢了,需要分析一下CPU的利用率,下面学习一下几个分析CPU利用率的linux命令。
uptime命令
[root@localhost ~]# uptime
13:18:03 up 7:00, 2 users, load average: 0.00, 0.01, 0.05
当前时间是13:18:03
系统已运行时间7:00
当前在线用户2
最近1分钟平均负载0.00
最近5分钟平均负载0.01
最近15分钟平均负载0.05
cat /proc/loadavg命令也可以查看系统平均负载。
[root@localhost ~]# cat /proc/loadavg
0.00 0.01 0.05 2/281 8321
最近1分钟平均负载0.00
最近5分钟平均负载0.01
最近15分钟平均负载0.05
2/281,2是当前正在运行的进程数,分母是总的进程数
最近运行进程的ID是8321
上面总是说到系统负载,我们能感觉到一个大概意思,但较为准确的定义是:在特定的时间间隔内运行队列中的平均进程数。在学习分析CPU利用率时,我们还需要知道CPU的个数和CPU的核数,cat /proc/cpuinfo命令用于查看CPU的信息。
CPU个数:即物理CPU数,主板实际插入的CPU数量,可以数不重复的 physical id 有几个(physical id)
CPU核数:单块CPU上面能处理数据的芯片组的数量,如双核,四核等(cpu cores)
逻辑CPU数:一般情况下,逻辑CPU=物理CPU个数x每颗核数。如果不等,表示CPU支持超线程技术
# 查看物理CPU个数
cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
[root@localhost ~]# cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l
1
# 查看每个物理CPU中core的个数(即核数)
cat /proc/cpuinfo| grep "cpu cores"| uniq
[root@localhost ~]# cat /proc/cpuinfo| grep "cpu cores"| uniq
cpu cores : 1
# 查看逻辑CPU的个数
cat /proc/cpuinfo| grep "processor"| wc -l
[root@localhost ~]# cat /proc/cpuinfo| grep "processor"| wc -l
1
上面我们通过uptime命令查看的平均负载0.00,0.01,0.05。通过查看CPU信息,我这里的linux是单处理器的(CPU个数为1),平均情况下,处理器执行的工作会稍多于它的处理能力。在单处理器上,uptime命令显示的负荷平均值小于1.00的话,这表明处理器仍拥有额外的空闲周期。若是双CPU的机器,对应的值则是2.00。
cat /proc/loadavg命令可以查看当前活动的进程数。一般来说,每个CPU内核当前活动进程数不大于3,则系统运行表现良好。
学习地址:https://blog.csdn.net/beautifulgrils/article/details/79799634
https://www.cnblogs.com/ultranms/p/9253217.html