http://blog.trumandu.top/2019/03/02/linux%E6%80%A7%E8%83%BD%E4%BC%98%E5%8C%96%E7%AC%94%E8%AE%B0%E4%B9%8BCPU%E7%AF%87/
cpu优化用到的命令
查看cpu核数:
1
|
$ grep 'model name' /proc/cpuinfo | wc -l
|
mpstat 查看 CPU 使用率的变化情况
1
|
# -P ALL 表示监控所有 CPU,后面数字 5 表示间隔 5 秒后输出一组数据
|
pidstat查看具体进程cpu使用率
1
|
# 间隔 5 秒后输出一组数据
|
vmstat内存分析工具,可以分析上下文切换情况
1
|
# in中断 sc上下文切换
|
perl系能分析工具,可以追查引起性能问题的函数
1
|
$ sudo perf top -g -p 30377
|
平均负载
简单来说,平均负载是指单位时间内,系统处于可运行状态和不可中断状态的平均进程数,也就是平均活跃进程数,它和 CPU 使用率并没有直接关系。可运行状态顾名思义只得是正在运行的任务,不可中断状态例如等待cpu,等待IO。
cpu上下文
CPU寄存器和程序计数器为任务运行必备依赖环境,即为cpu上下文
cpu上下文切换包含哪些?
(1)进程上下文切换(2)线程上下文切换(3)中断上下文切换
不一定,当平均负载高的时候,任务主要是等待IO型,IO密集型任务,CPU使用率就不一定高。
centos中版本较低是,安装新版本即有
2. pidstat中%wait与top wa区别
pidstat 中, %wait 表示进程等待 CPU 的时间百分。
top 中 ,iowait%(简写wa) 则表示等待 I/O 的 CPU 时间百分。