cpustat 在 CentOS 上运行慢,通常不是“它自己慢”,而是采集或输出环节有瓶颈。下面按最常见 → 较少见给你系统排查思路,并给出对应解决办法。
cpustat 本质是周期性采样,如果间隔设置太小,会显得“卡”。
cpustat -i 0.1
✅ 建议:
cpustat -i 1
低于 0.5 秒的间隔在负载高时很容易显得慢
如果你在:
那么 终端刷新慢 会让 cpustat 看起来卡。
✅ 验证方法:
time cpustat -i 1 -n 5 > /tmp/cpu.log
如果 重定向后很快,那问题在终端,不在 cpustat。
✅ 优化:
cpustat -i 1 -n 10 | less
# 或
cpustat -i 1 -n 10 > cpu.log
cpustat 依赖 /proc 和 perf/调度信息,如果系统已经:
那它自然慢。
✅ 检查:
top
vmstat 1
重点看:
%wacs(上下文切换)run 队列cpustat 底层可能依赖 perf,CentOS 7 的老内核常见。
✅ 检查:
uname -r
perf --version
如果是:
✅ 建议:
yum update kernel
reboot
SELinux 可能拖慢 perf 类工具。
✅ 排查:
getenforce
如果是 Enforcing,可临时验证:
setenforce 0
如果明显变快,说明是 SELinux 问题。
✅ 不建议直接关,可只给 perf 放行。
cpustat 更适合:
✅ 实时看 CPU,推荐:
top
htop
mpstat -P ALL 1
sar -u 1
你可以直接跑这个:
cpustat -i 1 -n 5 > /tmp/cpustat.log
然后回答我:
我可以直接帮你判断是 工具问题 / 系统问题 / 使用方式问题。