CPU性能篇

CPU性能篇

 

负载判断

 

 

  • 使用CPU进程:%user %sys

CPU百分比: top(平均百分比) mapstat(每个CPU以及平均百分比)

具体进程:pidstat

 

  • 等待CPU进程:%wait

CPU百分比:vmstat 依据就绪队列长度来判断

具体进程:pidstat (%wait)

 

  • 不可中断进程: %iowait

CPU百分比: top(平均百分比) mapstat(每个CPU以及平均百分比)

具体进程:

 

 

命令汇总

  • top

CPU使用率:它是用户态和内核态 CPU 使用率的总和,包括进程用户空间使用的 CPU、通过系统调用执行的内核空间 CPU 、以及在就绪队列等待运行的 CPU。在虚拟化环境中,它还包括了运行虚拟机占用的 CPU。更细粒度的用pidstat

 

  • mpstat

是一个常用的多核 CPU 性能分析工具,用来实时查看每个 CPU 的性能指标,以及所有 CPU 的平均指标

mpstat -P ALL 5 查看 CPU 使用率的:-P ALL 表示监控所有CPU,后面数字5表示间隔5秒后输出一组数据

 

%user      用户态的CPU时间(%),不包含nice值为负进程  (usr/total)*100 CPU密集性

%nice      nice值为负进程的CPU时间(%)   (nice/total)*100

%sys       内核时间(%)       (system/total)*100

%iowait   硬盘IO等待时间(%) (iowait/total)*100 IO密集型的此值会很高

%irq         硬中断时间(%)     (irq/total)*100

%soft       软中断时间(%)     (softirq/total)*100

%idle       CPU除去等待磁盘IO操作外的因为任何原因而空闲的时间闲置时间(%) (idle/total)*100

 

  • pidstat

 

是一个常用的进程性能分析工具,用来实时查看进程的 CPU使用率、内存、I/O 以及上下文切换等性能指标

pidstat 5 1 确认那个进程导致了 CPU 使用率高,间隔5秒后输出一组数据,输出两次

用户态 CPU 使用率 (%usr);

内核态 CPU 使用率(%system);

运行虚拟机 CPU 使用率(%guest);

等待 CPU 使用率(%wait);源码或者RPM升级到11.5.5版本以后就可以看到了

以及总的 CPU 使用率(%CPU)。

 

-w:显示每个进程的上下文切换情况 pidstat -w 5 1

-t:显示选择任务的线程的统计信息外的额外信息

pidstat -wt 1 参数表示输出线程的上下文切换指标

cswch:自愿上下文切换表示每秒自愿上下文切换(voluntary context switches)的次数,是指进程无法获取所需资源,导致的上下文切换。比如说, I/O、内存等系统资源不足时,就会发生自愿上下文切换。自愿上下文切换变多了,说明进程都在等待资源,有可能发生了 I/O 等其他问题

nvcswch:非自愿上下文切换,表示每秒非自愿上下文切换(non voluntary context switches)的次数。则是指进程由于时间片已到等原因,被系统强制调度,进而发生的上下文切换。比如说,大量进程都在争抢 CPU 时,就容易发生非自愿上下文切换。非自愿上下文切换变多了,说明进程都在被强制调度,也就是都在争抢 CPU,说明 CPU 的确成了瓶颈

 

  • stress

是一个 Linux 系统压力测试工具

stress --cpu 1 --timeout 600 模拟一个 CPU 使用率 100% 的场景

stress -i 1 --timeout 600 模拟 I/O 压力

stress -c 8 --timeout 600 模拟的是 8 个进程

 

  • vmstat

观察CPU上下文切换情况。是个汇总。要想看某个进程的CPU使用率,要结合pidstat -wt 1来看

vmstat 1

 

cs(context switch)是每秒上下文切换的次数。

in(interrupt)则是每秒中断的次数。

r(Running or Runnable)是就绪队列的长度,也就是正在运行和等待 CPU 的进程数。若大于CPU核数,就会发生大量CPU竞争

b(Blocked)则是处于不可中断睡眠状态的进程数。

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值