如何用cpustat进行CPU性能基准测试
使用cpustat作为系统实时监控工具,可记录CPU使用率、上下文切换等多项性能指标;结合sysbench运行压力测试,将监控数据输出至日志,详细分析加压阶段CPU性能表现,最终整合sysbench性能评分与全程监控数据,完成全面系统性能评估。
cpustat 这个工具,很多人第一反应是“测 CPU 性能的”。其实吧,它更像一个监控探头,能实时告诉你 CPU 在干什么——使用率多高、上下文切换多频繁、中断跑没跑满。但要说跑一个完整的基准测试,它还真不擅长。那活儿得交给 sysbench、stress-ng 或 Prime95 这帮专业选手。
不过,巧就巧在:你完全可以让 cpustat 在基准测试现场当“旁观记录员”,把 CPU 在压力下的表现一一拍下来。下面这套打法,就是把监控和基准测试串起来用的经典案例。

步骤 1: 装好家伙
先把 cpustat 和 sysbench 请进系统。大多数 Linux 发行版都能用包管理器一步到位,比如在 Ubuntu 或 Debian 上:
sudo apt-get update
sudo apt-get install sysstat sysbench
注意,cpustat 通常包含在 sysstat 包里,装这一个就能搞定。
步骤 2: 跑基准测试
用 sysbench 扔一个 CPU 密集型任务过去。比如算素数,上限设成 20000:
sysbench --test=cpu --cpu-max-prime=20000 run
这条命令会让 CPU 拼命算数学,直到找出所有不超过 20000 的素数。简单粗暴,压力拉满。
步骤 3: 实时监控 CPU 表现
在 sysbench 吭哧吭哧算数的时候,另开一个终端,用 cpustat 盯着 CPU。每秒刷新一次:
watch -n 1 'cpustat -c'
如果想把数据留到后面慢慢分析,那就把输出重定向到文件:
cpustat -c > cpu_usage.log &
sysbench --test=cpu --cpu-max-prime=20000 run
kill $! # 测试结束后停掉 cpustat
这里 kill $! 的作用是让后台的 cpustat 进程在测试完成后乖乖退出,别一直蹲那空转。
步骤 4: 翻日志,看门道
测试跑完,打开 cpu_usage.log,逐行看 CPU 使用率、上下文切换次数、中断次数这些指标在加压阶段是怎么跳动的。重点观察:压力上来时使用率是否稳定接近 100%?上下文切换是不是突然飙升?中断有没有异常抖动?
最后说一句:cpustat 给的是实时监控快照,不是最终评分。想对整个 CPU 性能打分、定级,还得靠 sysbench 的最终输出,加上 cpustat 记录的全程数据,两者结合才能拼出完整的性能画像。
IntelliJ IDEA 是 JetBrains 推出的专业集成开发环境,重点服务于 Java、Kotlin 与 JVM 项目开发。软件集成代码补全、静态检查、重构、调试、测试、版本控制及构建工具,并可借助插件扩展语言和框架支持。
JetBrains PyCharm 是面向 Python 开发者的集成开发环境,提供智能补全、代码检查、重构、调试、测试、版本控制及虚拟环境管理功能。Mac 版兼容 Intel 与 Apple 芯片,核心功能可免费使用。
JetBrains WebStorm 是面向 JavaScript、TypeScript 和现代 Web 技术的专业集成开发环境,可智能理解项目结构,提供代码补全、重构、错误检查、运行调试、测试及 Git 工具。
JetBrains IntelliJ IDEA 是以 Java、Kotlin 和 JVM 项目为核心的专业集成开发环境,提供智能补全、代码检查、安全重构、调试、测试、版本控制及构建工具集成。统一发行版的核心功能可免费用于商业和非商业项目,
PhpStorm 是 JetBrains 面向 PHP 与现代 Web 开发打造的专业集成开发环境,提供代码补全、静态检查、重构、调试、测试、数据库、版本控制及前端语言支持。Windows 用户可直接下载安装程序,
PyCharm 是 JetBrains 推出的 Python 集成开发环境,提供智能代码补全、错误检查、重构、调试、测试、Git、终端及 Jupyter Notebook 支持。统一版安装后可体验 30 天 Pro 功能,





