测定cpu性能的指标
一、CPU使用率
1、如何查看CPU使用率
使用vmstat、top等命令查询,获取空闲(idle简写为id)值,1-id 即为cpu使用率
使用哪种方式查询都可以,需注意当cpu使用率较大时,需使用top命令查询单个cpu的利用率;
1)vmstat
2) top
top命令界面下,按1,显示单个cpu的信息(再按1,显示cpu总的使用情况)
如果某个cpu的数值使用率较大,其余的很小,则证明程序设计的有问题;
2、CPU使用率分析
注意>50% 告警>70% 严重>90%(也可以设置为80%以上告警)
当系统cpu利用率大于50%时,需要注意;大于70%时,需密切关注;大于90%,情况就比较严重了;
建议CPU使用率70%以下;
二、CPU负载
1、如何查看CPU负载
1)查看CPU逻辑颗数(负载与逻辑CPU个数密切相关)
cat /proc/cpuinfo |grep "processor"|wc -l
说明:以上为4核CPU
2)查看cpu负载
top命令界面如下(分别为1/5/15分钟的平均负载):
2、CPU负载分析
top命令,load
average的3个值,均除以逻辑cpu个数,得到的结果为每个cpu内核的负载,对此数值进行分析;
如果大于1,证明已经有一定的负载了;建议每个cpu内核平均负载不大于0.8;
如果为1~3之间,且系统其它资源都正常,则可接受;若大于5,则系统性能有问题;(有时大于2,也可以说负载高)
此数值并不是固定的,需要根据系统其它资源统一分析;
ps:这3个值代表1、5、15分钟的平均值,通过这3个数值的信息,可以分析出系统负载的趋势;
三、其他
1) vmstat的r计数器> cpu逻辑颗数
vmstat 1:关注r列值
r列: 表示系统中 CPU 等待处理的线程。由于 CPU 每次只能处理一个线程,所以,该数值越大,通常表示系统运行越慢。
这个值如果长期大于CPU逻辑颗数,则说明CPU资源不足,可以考虑增加CPU;
2)sar -u:查看CPU使用率
sar -q:查看CPU平均负载