记录用一条命令使CPU瞬间拉满到100%
# 命令
代码语言:javascript复制for i in `seq 1 $(cat /proc/cpuinfo |grep "physical id" |wc -l)`; do dd if=/dev/zero of=/dev/null & done
# 效果
代码语言:javascript复制[root@summer ~]# for i in `seq 1 $(cat /proc/cpuinfo |grep "physical id" |wc -l)`; do dd if=/dev/zero of=/dev/null & done
[1] 12701
[root@summer ~]# top
top - 15:31:52 up 66 days, 1:27, 1 user, load average: 0.72, 0.23, 0.17
Tasks: 80 total, 2 running, 78 sleeping, 0 stopped, 0 zombie
%Cpu(s): 32.3 us, 67.7 sy, 0.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1882232 total, 75960 free, 400968 used, 1405304 buff/cache
KiB Swap: 0 total, 0 free, 0 used. 1275984 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME COMMAND
12701 root 20 0 107996 612 520 R 99.3 0.0 0:10.31 dd
14956 root 10 -10 150028 24964 5836 S 0.7 1.3 451:05.52 AliYunDun
# 说明
- cat /proc/cpuinfo |grep "physical id" | wc -l 获得CPU的个数
- seq 1 N 有几个CPU生成几个数字
- dd if=/dev/zero of=/dev/null 执行dd命令, 输出到/dev/null, 实际上只占用CPU, 没有IO操作。
- 由于连续执行N个(N是CPU个数)的dd 命令, 且使用率为100%, 这时调度器会调度每个dd命令在不同的CPU上处理,最终就实现所有CPU占用率100%
# 关闭方法
fg
后按ctrl C
pkill -9 dd