★★★★☆架构
mpstat 是 Multiprocessor Statistics 的缩写,是一种实时系统监控工具。mpstat 命令会输出 CPU 的一些统计信息,这些信息存放在 /proc/stat 文件中。在多 CPU 的系统里,此命令不但能用来查看全部 CPU 的平均情况信息,并且还能用来查看特定 CPU 的信息。dom
mpstat 命令的最大特色是:能够查看多核心 CPU 中每一个计算核心的统计数据,而相似命令 vmstat 只能查看系统总体的 CPU 状况。工具
mpstat [option] [delay [count]]
mpstat [选项] [时间间隔 [次数]]
mpstat [ -A ]
[ -I { SUM | CPU | SCPU | ALL } ]
[ -u ]
[ -P { cpu [0,1...] | ON | ALL } ]
[ -V ] [ interval [ count ] ]
说明:spa
1. 在 mpstat 命令及后面的选项里,每一个元素之间都至少要有一个空格。
2. delay 表示两次输出之间的时间间隔。
3. count 表示按照 delay 指定的时间间隔统计的次数。code
-A :至关于使用-I ALL -u -P ALL -I {SUM | CPU | SCPU | ALL} :报告中断的统计资料 SUM: mpstat命令报告每一个处理器的中断总数。显示的值以下: CPU: 处理器编号,all表示显示统计信息的值为全部处理器的平均值 intr/s:显示每秒接收到的CPU或CPUs的中断总数。 CPU: 显示CPU每秒接收到的每一个中断的数量 SCPU: 显示CPU每秒接收到的每个单独的软件中断的数量,此选项仅适用于内核2.6.31和更高版本。 ALL: 至关于指定以上全部关键字
-P { cpu [0,1...] | ON | ALL } :指定处理器编号显示其统计报告 cpu: cpu为处理器编号,处理器0是所述第一个处理器。 ON: 每个正在使用的处理器的统计报告 ALL: 全部处理器的统计报告。
-u :报告的CPU利用率,显示的值以下: CPU: 处理器编号,all表示显示统计信息的值为全部处理器的平均值
例如: 1. -P 0 :表示第一个 CPU 2. -P 1 :表示第二个 CPU 3. -P ALL :表示全部 CPU
[root@localhost :~]# mpstat # 若是省略 "时间间隔" 和 "次数"参数,则仅显示一次报告后退出。 Linux 3.10.0-862.14.4.el7.x86_64 (localhost.localdomain) 2018年12月25日 _x86_64_ (2 CPU) 17时10分08秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 17时10分08秒 all 0.09 0.00 0.17 0.01 0.00 0.01 0.00 0.00 0.00 99.73 [root@localhost :~]#
[root@localhost :~]# mpstat 5 6 # 表示每5秒更新一次输出信息,统计6次后中止输出。 Linux 3.10.0-862.14.4.el7.x86_64 (localhost.localdomain) 2018年12月25日 _x86_64_ (2 CPU) 17时11分45秒 CPU %usr %nice %sys %iowait %irq %soft %steal %guest %gnice %idle 17时11分50秒 all 0.10 0.00 0.20 0.00 0.00 0.00 0.00 0.00 0.00 99.70 17时11分55秒 all 0.00 0.00 0.10 0.00 0.00 0.10 0.00 0.00 0.00 99.80 17时12分00秒 all 0.10 0.00 0.20 0.00 0.00 0.00 0.00 0.00 0.00 99.70 17时12分05秒 all 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00 17时12分10秒 all 0.10 0.00 0.20 0.00 0.00 0.00 0.00 0.00 0.00 99.70 17时12分15秒 all 0.00 0.00 0.10 0.00 0.00 0.00 0.00 0.00 0.00 99.90 平均时间: all 0.05 0.00 0.13 0.00 0.00 0.02 0.00 0.00 0.00 99.80 [root@localhost :~]#
一下是命令结果的详细说明:blog
第一行: 第一列:Linux 3.10.0-862.14.4.el7.x86_64 (localhost.localdomain),系统内核版本及主机名称 第二列:2018年12月25日, 表明当前时间:受系统 date 命令的格式等影响 第三列:CPU 架构及个数。 从第二行起: 第一列 :%usr: 用户进程消耗的 CPU 时间百分比。 第二列 :%nice: 改变过优先级的进程占用的 CPU 时间百分比。 第三列 :%sys: 系统( 内核 ) 进程消耗的 CPU 时间百分比。 第四列 :%iowait:IO 等待所占用的 CPU 时间百分比。 第五列 :%irq: 硬中断占用的 CPU 时间百分比。 第六列 :%soft: 软中断占用的 CPU 时间百分比。 第七列 :%steal: 虚拟机强制 CPU 等待的时间百分比。 第八列 :%guest: 虚拟机占用 CPU 时间百分比。 第九列 :%idle: CPU 处在空闲状态的时间百分比。