linux 性能工具

 

查看cpu 负载

1:cpu 个数   grep 'model name' /proc/cpuinfo | wc -l

2:watch -d uptime

#----------------------------------------------

系统运行时间*/     /*当前时间*/  /*正在登录用户数*/   /*过去 1 分钟的平均负载*/ /*过去5 的平均负载*/ /*过去15 分钟的平均负载*/

02:34:03 up 2 days,20:14,  1 user, load average: 0.63, 0.83, 0.88

3:mpstat -P ALL 1

 

4:pidstat -w 5
Linux 4.15.0 (ubuntu)  09/23/18  _x86_64_  (2 CPU)
08:18:26      UID       PID   cswch/s nvcswch/s  Command
08:18:31        0         1      0.20      0.00  systemd
08:18:31        0         8      5.40      0.00  rcu_sched

swch ,表示每秒自愿上下文切换(voluntary context switches)的次数

nvcswch ,表示每秒非自愿上下文切换(non voluntary context switches)的次数。

 

上下文切换

1:vmstat 5

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----

r b swpd free buff cache si so bi bo in cs us sy id wa st

0 0 0 7005360 91564 818900 0 0 0 0 25 33 0 0 100 0 0

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

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

  • r(Running or Runnable)是就绪队列的长度,也就是正在运行和等待 CPU 的进程数。

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

  • us(user)和 sy(system)列:这两列的 CPU 使用率加起来上升到了 100%,其中系统 CPU 使用率,也就是 sy 列高达 84%,说明 CPU 主要是被内核占用了。

  • # 记录性能事件,等待大约 15 秒后按 Ctrl+C 退出
    $ perf record -g
     
    # 查看报告
    $ perf report

  • execsnoop
    PCOMM            PID    PPID   RET ARGS
    sh               30394  30393    0
    stress           30396  30394    0 /usr/local/bin/stress -t 1 -d 1
    sh               30398  30393    0
    stress           30399  30398    0 /usr/local/bin/stress -t 1 -d 1
    sh               30402  30400    0
    stress           30403  30402    0 /usr/local/bin/stress -t 1 -d 1
    sh               30405  30393    0
    stress           30407  30405    0 /usr/local/bin/stress -t 1 -d 1

watch -d cat /proc/softirqs
                CPU0       CPU1
      HI:          0          0
   TIMER:    1083906    2368646
  NET_TX:         53          9
  NET_RX:    1550643    1916776
   BLOCK:          0          0
IRQ_POLL:          0          0
 TASKLET:     333637       3930
   SCHED:     963675    2293171
 HRTIMER:          0          0
     RCU:    1542111    1590625

TIMER(定时中断)、NET_RX(网络接收)、SCHED(内核调度)、RCU(RCU 锁)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值