- # 每隔 5 秒输出 1 组数据
- vmstat 5
-
cs(context switch)是每秒上下文切换的次数。
-
in(interrupt)则是每秒中断的次数。
-
r(Running or Runnable)是就绪队列的长度,也就是正在运行和等待 CPU 的进程数。
-
b(Blocked)则是处于不可中断睡眠状态的进程数
-
- vmstat 5
- 查看每个进程的详细情况
- -w 选项,你就可以查看每个进程上下文切换的情况
- pidstat -w 5
- 一个是 cswch ,表示每秒自愿上下文切换(voluntary context switches)的次数,
- 另一个则是 nvcswch ,表示每秒非自愿上下文切换(non voluntary context switches)的次数。
- # 间隔 1 秒后输出 1 组数据
- vmstat 1
- # 每隔 1 秒输出 1 组数据(需要 Ctrl+C 才结束)
- # -w 参数表示输出进程切换指标,而 -u 参数则表示输出 CPU 使用指标
- pidstat -w -u 1
- # 每隔 1 秒输出一组数据(需要 Ctrl+C 才结束)
- # -wt 参数表示输出线程的上下文切换指标
- pidstat -wt 1
- -d 参数表示高亮显示变化的区域
- watch -d cat /proc/interrupts
- sysbench --test=threads --num-threads=5000 --thread-yields=100 --thread-locks=4 run