如何使用cpustat进行性能基准测试
cpustat是监控CPU性能的工具,需通过sysstat软件包安装。它本身不生成负载,但可配合stress-ng等压力工具使用。在施加负载前后运行cpustat命令,对比CPU使用率等数据变化,即可辅助评估系统性能。进行测试前应确保环境干净稳定,并注意cpustat主要用于监控,专业基准测试需借助其他工具。
说到监控CPU使用情况,cpustat是个绕不开的工具。它通常随sysstat软件包一同提供,能帮你清晰地洞察CPU的性能与负载。不过,得先明确一点:cpustat的核心定位是监控和报告,而非专门的性能基准测试工具。如果你希望用它来辅助进行基准测试,下面的思路或许能帮到你。

安装 sysstat 包
在大多数Linux发行版中,安装过程都很直接。根据你的系统,选择对应的包管理器命令即可:
# 在 Debian/Ubuntu 上
sudo apt-get update
sudo apt-get install sysstat
# 在 CentOS/RHEL 上
sudo yum install sysstat
# 在 Fedora 上
sudo dnf install sysstat
使用 cpustat 监控 CPU 性能
安装完成后,cpustat就能派上用场了。比如,想实时观察CPU的动态,可以运行这个命令:
cpustat -u 1
它会每秒刷新一次,让你对CPU的使用情况一目了然。
进行性能基准测试
虽然cpustat本身不生成负载,但我们可以请个“外援”。像stress或stress-ng这类工具,就能专门用来给系统施加压力。先把它装上:
# 安装 stress-ng
sudo apt-get install stress-ng # Debian/Ubuntu
sudo yum install stress-ng # CentOS/RHEL
sudo dnf install stress-ng # Fedora
# 对 CPU 施加 4 个进程的压力
stress-ng --cpu 4 --io 2 --vm 2 --vm-bytes 128M --timeout 10s
上面这个例子,会让stress-ng同时调动CPU、I/O和内存,模拟一个复合型负载场景。
分析结果
这才是cpustat发挥价值的关键环节。你可以在压力测试的前后,分别运行cpustat来捕捉CPU状态的变化:
# 测试前
cpustat -u 1
# 运行基准测试
stress-ng --cpu 4 --io 2 --vm 2 --vm-bytes 128M --timeout 10s
# 测试后
cpustat -u 1
对比两次输出的数据,就能直观地看到CPU在负载下的具体表现,比如使用率峰值、波动情况等。
注意事项
- 务必认清工具边界:
cpustat擅长的是监控和分析,而非基准测试本身。后者通常需要能生成标准化负载并测量特定指标的专业工具。 - 测试环境要“干净”。开始前,尽量关闭非必要的后台服务和应用程序,确保系统处于一个稳定的基线状态,这样才能减少干扰,让结果更有说服力。
如果你需要更全面、深入的性能分析和基准测试,市面上还有更多专业选择,例如lmbench、Phoronix Test Suite或者UnixBench,它们能提供更丰富的测试维度和更精确的度量。


































