第 3 章 使用压力测试实时系统
stress-ng 工具测量系统的能力,以便在不可尝试的情况下保持良好的效率水平。stress-ng 工具是一种压力工作负载生成器,用于加载和压力所有内核接口。它包括广泛的压力机制,称为压力者。压力测试使得计算机工作困难和行程硬件问题(如热运行和操作系统漏洞)在系统过度工作时发生。
270 进行了不同的测试。这包括练习浮动点、整数、位操作、控制流和虚拟内存测试的 CPU 特定测试。
请谨慎使用 stress-ng 工具,因为某些测试可能会影响设计较差硬件上系统的热区域行点。这可能会影响系统性能,并导致过度出现系统延迟,这很难停止。
3.1. 测试 CPU 浮点单元和处理器数据缓存 复制链接链接已复制到粘贴板!
浮点单元是处理器的功能部分,其执行浮点算术操作。浮点单元处理数学操作,使浮动数或十进制计算变得更加简单。
使用-- matrix-method 选项,您可以压力测试 CPU 浮动点操作和处理器数据缓存。
先决条件
- 在系统中具有 root 权限
流程
要测试一个 CPU 上的浮动点 60 秒,请使用 the-
matrix选项:# stress-ng --matrix 1 -t 1m要在多个 CPU 上运行多个压力(60 秒),请使用-
times or-t选项:# stress-ng --matrix 0 -t 1m stress-ng --matrix 0 -t 1m --times stress-ng: info: [16783] dispatching hogs: 4 matrix stress-ng: info: [16783] successful run completed in 60.00s (1 min, 0.00 secs) stress-ng: info: [16783] for a 60.00s run time: stress-ng: info: [16783] 240.00s available CPU time stress-ng: info: [16783] 205.21s user time ( 85.50%) stress-ng: info: [16783] 0.32s system time ( 0.13%) stress-ng: info: [16783] 205.53s total time ( 85.64%) stress-ng: info: [16783] load average: 3.20 1.25 1.40具有 0 压力测试器的特殊模式,查询要运行的可用 CPU,无需指定 CPU 号。
总 CPU 时间为 4 x 60 秒(240 秒),其中 0.13% 在内核中为 85.50%,用户时间为 85.64%,
stress-ng运行所有 CPU 的 85.64%。要使用 POSIX 消息队列测试进程间传递的消息,请使用 the
-mq选项:# stress-ng --mq 0 -t 30s --times --perfmq选项配置特定数量的进程,以使用 POSIX 消息队列强制上下文切换。这种压力测试旨在用于低数据缓存未命中。