cpustat 是一个强大的命令行工具,用于监控和分析 CPU 的使用情况。它是 sysstat 包的一部分,通常在大多数 Linux 发行版中都可以通过包管理器安装。以下是一些使用 cpustat 分析 CPU 使用率的技巧:
查看所有 CPU 的统计信息:
cpustat
指定采样间隔和持续时间:
cpustat -i 1 5
这个命令会每秒采样一次 CPU 使用情况,持续 5 秒。
查看特定 CPU 核心的统计信息:
cpustat -C 0 1 5
这个命令会显示 CPU 核心 0 的统计信息,每秒采样一次,持续 5 秒。
显示详细的 CPU 使用率:
cpustat -m
这个命令会显示每个 CPU 核心的详细使用率,包括用户态、系统态、空闲态等。
显示中断和上下文切换的统计信息:
cpustat -i -I
这个命令会显示每个 CPU 核心的中断和上下文切换的统计信息。
显示 CPU 的温度:
cpustat -t
这个命令会显示每个 CPU 核心的温度(如果系统支持)。
显示 CPU 的频率:
cpustat -f
这个命令会显示每个 CPU 核心的频率。
结合 top 或 htop 使用:
你可以使用 cpustat 来获取更详细的 CPU 使用率数据,然后结合 top 或 htop 来实时监控进程级别的 CPU 使用情况。
结合 vmstat 使用:
vmstat 可以提供内存、交换空间、I/O 和 CPU 的统计信息。结合 cpustat 可以更全面地了解系统的性能状况。
以下是一个 cpustat 的示例输出:
Linux 5.4.0-42-generic (hostname) 01/01/2023 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
12.34 0.00 2.34 0.67 0.00 84.65
CPU %usr %sys %ctx %irq %soft %steal %guest %gnice %idle
0 15.0 2.0 100 0.0 0.0 0.0 0.0 0.0 83.0
1 10.0 1.5 100 0.0 0.0 0.0 0.0 0.0 88.5
2 12.0 2.5 100 0.0 0.0 0.0 0.0 0.0 85.5
3 11.0 1.8 100 0.0 0.0 0.0 0.0 0.0 87.2
通过分析这些数据,你可以了解 CPU 的使用情况,并找出可能的性能瓶颈。