使用yes命令来测试你的cpu负载

2024-01-20 09:43:44 浏览数 (2)

CPU负载测试是评估计算机中央处理器(CPU)性能的一种方法。该测试旨在确定CPU在处理各种工作负载时的表现,并可以用于验证硬件配置的稳定性、识别性能瓶颈以及进行系统优化。

通过进行cpu负载测试,我们可以对性能进行评估: 测试CPU在不同工作负载下的性能,了解其处理能力和效率。也可以进行稳定性测试: 通过模拟高负载情况,验证系统在长时间运行中是否稳定。进行负载测试的方法也有很多。可以用第三方工具,也可以用linux的原生命令。话不多说,我们直接开搞

我们这次负载测试使用的命令是yes。linux系统自带的。yes 是一个在Linux和类Unix系统中的命令行工具,其主要作用是不断地输出指定的字符串,默认情况下是一直输出 "y" 你也可以提供你想输出的字符串,类似这样 yes "Hello, World!" yes 命令可以用于简单的CPU负载测试。虽然 yes 主要设计用于在终端中输出重复的字符串,但其运行时会导致CPU的高负载。

步骤如下:

首先ssh登录到你的服务器

执行 cat /proc/cpuinfo 来确认你的cpu核数,输入命令后我们看processor。他的索引是从0开始的。比如我这里显示1,证明我是有2核

接着我们就可以执行yes命令了。比如我这里是2个核心,那么我需要执行2次这个命令 yes > /dev/null & 即可。 执行完后程序会后台运行。

然后我们输入 top 命令,来查看当前cpu的负载情况

程序输出是这样的:

代码语言:javascript复制
top - 10:22:12 up 129 days,  9:49,  1 user,  load average: 0.31, 0.09, 0.07
Tasks: 110 total,   3 running, 107 sleeping,   0 stopped,   0 zombie
%Cpu(s): 98.8 us,  1.2 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem : 22.1/2914028  [|||||||||||||||                                                     ]
KiB Swap: 31.9/1047548  [||||||||||||||||||||||                                              ]
PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME  COMMAND                    
 2403 root      20   0  108060    620    524 R  99.3  0.0   0:13.23 yes                        
 2406 root      20   0  108060    616    524 R  99.3  0.0   0:11.24 yes   

可以看到2个yes进程把cpu已经都打满了。 如果我们想终端cpu负载测试,让cpu负载变成正常,那么只需要输入命令 killall yes 即可。

如果你想测试50%负载,那么就执行1次这yes > /dev/null &即可,依次类推

总体而言,yes是一个比较简单实用的,适用于基础的cpu负载测试,但是缺点是不支持太多参数,在后面,我会介绍更强大的负载测试工具stress 。创作不易,如果您觉得这篇文章对你有帮助,不妨给我点个赞,这将是我继续分享优质内容的动力。

0 人点赞