性能指标分析--CPU篇(二)

2021-12-16  本文已影响0人  小啊小狼

CUP分析实战

一、模拟远超cpu核数的多进程

模拟工具stress-ng,stress-ng是 stress压力测试工具的 升级版本

模拟场景:远超cpu核数的多进程

(( proc_cnt = `nproc`*10 )); stress-ng --cpu $proc_cnt --pthread 1 --timeout 150

命令涵义:nproc 得到是 当前电脑cpu的数量,模拟产生10倍核数的进程,每个进程1个线程,运行150秒
1、top命令观察到的现象:

image.png

2、vmstat命令观察到的现象

image.png

3、pidstat -w 命令观察到的现象

image.png

总结:我只有4个cpu,但是在有大量的进程要使用cpu时,通过vmstat看到 r队列有大量的队列等待使用cpu,并且看到了有大量中断和上下文切换。基本可以确定cpu不够。

二、模拟场景:单cpu多线程

stress-ng --cpu `nproc` --pthread 1024 --timeout 150

命令涵义:电脑有多少个cpu,就模拟出 cpu数量*1024 这么多线程 运行150秒

1、top命令观察到的现象:

image.png

2、vmstat命令观察到的现象

image.png

3、pidstat -w 命令观察到的现象

image.png
总结:线程上下文切换与进程上下文切换对比

三、模拟大量I/O操作

stress-ng --hdd 1 -i 6 --timeout 150

1、top命令观察到的现象:

image.png

2、vmstat

image.png

3、iostat -dx 1

image.png
上一篇 下一篇

猜你喜欢

热点阅读