mpstat是sysstat包中用于linux下排查、监控cpu的一个工具。可从该工具体现出程序中断情况、cpu负载情况等。
用法
mpstat [ options ] [ <interval> [ <count> ] ]
命令参数
-
-P { <cpu_list> | ALL } : ALL表示所有cpu的平均损耗信息,<cpu_list>为指定对应的cpu编号的损耗信息;
-
-o JSON :以json形式展示统计信息;
-
-N { <node_list> | ALL } :显示NUMA(non-uniform memory access)节点的统计信息;
-
-I { SUM | CPU | SCPU | ALL } :显示中断信息,SUM汇总,CPU软中断,SCPU软中断,ALL软硬中断;
-
-A : 等价于 -u -P ALL -I SUM;
输出参数
- CPU:CPU ID。all 表示所有 CPU 的平均值。
- %usr:在用户模式下运行所使用的 CPU 时间百分比(不包括 nice 优先级的进程)。
- %nice:在用户模式下运行具有 nice 优先级的进程所使用的 CPU 时间百分比。
- %sys:在内核模式下运行所使用的 CPU 时间百分比。
- %iowait:CPU 等待 I/O 操作完成所花费的时间百分比。
- %irq:CPU 服务硬件中断所花费的时间百分比。
- %soft:CPU 服务软件中断所花费的时间百分比。
- %steal:虚拟化环境中,其他虚拟机运行而被窃取的 CPU 时间百分比。
- %guest:用于运行虚拟处理器所花费的时间百分比。
- %gnice:用户模式下具有 nice 优先级的虚拟处理器运行所花费的时间百分比。
- %idle:CPU 空闲时间百分比。
参数之间的关系:
-
cpu使用率 = %usr + %nice + %sys + %iowait + %irq + soft + %steal + %guest + %gnice
-
cpu total = cpu使用率 + %idle
-
虚拟化 = %guest + %steal
-
中断 = %irq + %soft