cpustat 是一个用于显示 CPU 统计信息的工具,它是 sysstat 软件包的一部分。要使用 cpustat 显示 CPU 执行的指令数,您需要确保已安装了 sysstat 软件包。在大多数 Linux 发行版中,可以使用以下命令安装:
对于基于 Debian 的系统(如 Ubuntu):
sudo apt-get update
sudo apt-get install sysstat
对于基于 RHEL 的系统(如 CentOS、Fedora):
sudo yum install sysstat
安装完成后,您可以通过运行以下命令来查看 CPU 执行的指令数:
cpustat -c -e
这将显示每个 CPU 的详细统计信息,包括执行的指令数(instructions)。输出示例:
Linux 5.4.0-42-generic (hostname) 05/01/2021 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
12.34 0.00 2.34 0.00 0.00 85.32
Device: rrqm/s wrqm/s r/s w/s rkB/s wkB/s avgrq-sz avgqu-sz await r_await w_await svctm %util
sda 0.00 0.00 1.00 0.00 8.00 0.00 16.00 0.00 0.00 0.00 0.00 0.00 0.00
在这个示例中,%user、%system 和 %idle 列分别显示了用户空间程序、内核空间程序和空闲时间所占用的 CPU 百分比。要查看执行的指令数,您需要关注 instructions 列。但是,请注意,cpustat 默认情况下不会显示 instructions 列。要显示此列,您需要使用 -I 选项:
cpustat -c -I
这将显示类似以下的输出:
Linux 5.4.0-42-generic (hostname) 05/01/2021 _x86_64_ (4 CPU)
avg-cpu: %user %nice %system %iowait %steal %idle
12.34 0.00 2.34 0.00 0.00 85.32
cpu %usr %sys %ctx %intr %idle %irq %soft %steal %guest %gnice %idlef
0 12.34 2.34 1234 567 85.32 0.12 0.01 0.00 0.00 0.00 99.99
在这个示例中,%ctx 列显示了上下文切换的次数,这可以间接反映 CPU 执行的指令数。然而,这并不是一个精确的指标,因为上下文切换并不总是意味着 CPU 执行了新的指令。