当前位置: 首页 > news >正文

stress-ng压测CPU内存

下面是一个在 8 核心 CPU + 16 GB 内存的 Linux 系统上,将 CPU 和内存同时打满的压测脚本方案,使用 stress-ng 工具来实现。


为什么选择 stress-ng

  • 它是一个功能全面、灵活、强大的系统压力测试工具;
  • 支持对 CPU、内存、I/O 等子系统施加压力;
  • 可指定占用全部核心,并控制内存使用量、执行时间等;
    ([LFCS认证备考电子书][1], [Ubuntu Wiki][2], [工具棚][3])

脚本示例:stress-test.sh

#!/bin/bash# 压力测试脚本:CPU + 内存满载DURATION="300s"  # 持续时间(300秒 = 5分钟)
CPU_CORES=0      # 0 表示自动检测并使用所有在线 CPU
VM_INSTANCES=8   # 启动内存压力进程个数
VM_BYTES="12G"   # 每个实例分配内存(总计约 96GB,系统会因超限导致页面交换)echo "Starting stress-ng: CPU + memory stress for $DURATION"
echo "CPU cores: all ($CPU_CORES), VM instances: $VM_INSTANCES, VM bytes: $VM_BYTES"sudo stress-ng \--cpu $CPU_CORES \--vm $VM_INSTANCES \--vm-bytes $VM_BYTES \--vm-hang 0 \--timeout $DURATION \--metrics-brief

脚本说明:

  • --cpu 0:对所有核心施加 CPU 压力;
  • --vm 8 + --vm-bytes 12G:启动 8 个虚拟内存压力进程,每个分配 12 GB;
    可根据实际内存进行调整,如 --vm-bytes 50% 表示使用一半内存([工具棚][3], [Reddit][4]);
  • --timeout:指定压力持续时长;
  • --metrics-brief:输出简要的执行信息;
  • --vm-hang 0:防止内存释放,持续稳定压力。

使用步骤

  1. 安装 stress-ng

    • CentOS / RHEL / Fedora

      sudo dnf install -y stress-ng
      
    • Debian / Ubuntu

      sudo apt update && sudo apt install -y stress-ng
      
  2. 保存脚本并赋予执行权限

    chmod +x stress-test.sh
    
  3. 执行脚本并观察效果

    ./stress-test.sh
    
  4. 监控系统负载,例如:

    top
    swag -n 1   # An interactive monitor like htop 或 atop 也可
    

显著特性与风险

  • 通过设置高于物理内存的 --vm-bytes,可以强制系统使用 swap,从而引发系统 OOM 压力;
  • 脚本中使用的参数是激进的,请谨慎应用于生产环境;
  • 如果要控制 CPU 占用百分比,可使用 --cpu-load P,但多数场景还是全满更具测试意义([工具棚][3], [Server Fault][5])。

http://www.hskmm.com/?act=detail&tid=951

相关文章:

  • 答案
  • datadome OfflineAudioContext
  • AI测试平台自动遍历:低代码也能玩转全链路测试
  • 2025-09-10
  • Codeforces Round 1047 (Div. 3)
  • sentinel-1.8.0 安装
  • 数据结构与算法-27.树-并查集
  • wpf XAML设计器在加载用户控件的时候,提示null引用等直接执行了用户控件里构造函数代码的问题
  • 设计模式-策略
  • Linux中怎么调整系统inode数量?
  • DARPA AI网络挑战赛技术框架全解析:自动化漏洞挖掘与修复系统构建
  • 数据库基本查询语句
  • 【项目实战】基于WS63的鸿蒙星闪红外遥控车(循迹、超声波避障、远程控制、星闪/红外遥控)有教程代码
  • macbook pro怎么安装windows系统
  • XSS与CSRF的联系与区别
  • 异或
  • apche 2.4 开启mod_cache_disk和mod_deflate后,磁盘上缓存的是压缩后的文件
  • 复现tensor2tensor代码时遇到的问题和相关链接
  • macbook pro如何安装windows系统
  • 【ACM出版】第四届公共管理、数字经济与互联网技术国际学术会议(ICPDI 2025)
  • 如何在 Linux 中关闭 Swap(虚拟内存)
  • 再见 Cursor,Qoder 真香!这波要改写 AI 编程格局
  • 三.ubuntu22.04 使用C++部署PyTorch模型
  • alertmanager配置集群模式
  • 《Python数据结构与算法分析》代码
  • AI 是否绑架了云原生创新?
  • Windows 7 局域网打印机共享设置
  • SPFA求负环
  • 磁盘存储器
  • 多变量的递归2-组合总和问题(每个数字可以使用多次)