有时发先系统的响应速度变慢了,需要分析一下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