玩命加载中 . . .

Linux stat家族之mpstat


介绍

此指令输出 CPU 负载相关信息。

mpstat 主要能看什么性能指标

  • 每个 CPU 的不同类型 CPU 使用率、不同软中断类型次数统计、总中断次数

  • 上述所有 CPU 的平均数据

语法格式

mpstat [ -A ] [ -n ] [ -u ] [ -V ] [ -I { keyword [,...] | ALL } ] [ -N { node_list | ALL } ] [ -o JSON] [ -P { cpu_list | ON | ALL } ] [ interval [ count ] ]
  • interval :间隔多久统计一次数据,可选

  • count:统计一次,可选

注意:

  • 若只传了 interval ,则统计次数是无限次,结束统计后会打印本次所有数据的平均值.

例子

mpstat 1

每隔 1s 统计打印一次数据,统计无限次

mpstat 2 5

每隔 2s 统计打印一次数据,共统计 5 次

统计信息的字段说明

最基础的命令

[root@node81 ~]# mpstat 1 2
Linux 4.14.148-202207281639.git553ed7f (node81) 	01/19/2023 	_x86_64_	(8 CPU)


05:39:30 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:39:31 PM  all    0.38    0.00    0.25    0.00    0.00    0.00    0.00    0.00    0.00   99.37
05:39:32 PM  all    1.01    0.00    2.90    0.00    0.00    0.00    0.00    0.00    0.00   96.09
Average:     all    0.69    0.00    1.57    0.00    0.00    0.00    0.00    0.00    0.00   97.74
[root@node81 ~]# 

字段说明

字 段 字段说明
CPU CPU编号,all代表全部CPU的平均值
%usr 用户态CPU使用率
%nice 高优先级的用户态CPU使用率
%sys 内核态CPU使用率
%iowast iowait CPU使用率
%irq 硬中断CPU使用率
%soft 软中断CPU使用率
%steal 被虚拟处理器’偷’走的CPU百分比
%guest 运行虚拟处理器CPU使用率
%gnice 运行高优先级的虚拟处理器CPU使用率
%idle 空闲CPU百分比

命令行参数

字 段 字段说明
-V 版本信息
-u 打印CPU统计信息,默认就有
-p 需要输出统计信息的CPU
-o JSON json格式输出结果
-l 报告中断情况

-P { cpu_list | ON | ALL }

作用

  • 指定要报告其统计信息的 CPU

  • cpu_list:是用 , 分隔的值或值范围的列表(例如 0,2,4-7,0-1 )

  • ON:将为每个联机 CPU 报告统计信息

  • ALL:将为所有 CPU 报告统计信息

cpu_list 的例子

只指定 CPU1

mpstat -P 1 1 2

[root@node81 ~]# mpstat -P 1 1 2
Linux 4.14.148-202207281639.git553ed7f (node81) 	01/19/2023 	_x86_64_	(8 CPU)

05:56:16 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:56:17 PM    1    0.00    0.00    5.94    0.00    0.00    0.00    0.00    0.00    0.00   94.06
05:56:18 PM    1    1.01    0.00    5.05    0.00    0.00    0.00    0.00    0.00    0.00   93.94
Average:       1    0.50    0.00    5.50    0.00    0.00    0.00    0.00    0.00    0.00   94.00
[root@node81 ~]# 

指定CPU0、CPU1

mpstat -P 0,1 1 2

[root@node81 ~]# mpstat -P 0,1 1 2
Linux 4.14.148-202207281639.git553ed7f (node81) 	01/19/2023 	_x86_64_	(8 CPU)

05:57:48 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:57:49 PM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:57:49 PM    1    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:57:50 PM    0    1.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
05:57:50 PM    1    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
Average:       0    0.50    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.50
Average:       1    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
[root@node81 ~]# 

ON 的例子

mpstat -P ON 1 2

[root@node81 ~]# mpstat -P ON 1 2
.Linux 4.14.148-202207281639.git553ed7f (node81) 	01/19/2023 	_x86_64_	(8 CPU)

05:58:07 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:58:08 PM  all    1.01    0.00    0.38    0.00    0.00    0.00    0.00    0.00    0.00   98.62
05:58:08 PM    0    1.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
05:58:08 PM    1    1.01    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   98.99
05:58:08 PM    2    1.00    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   98.00
05:58:08 PM    3    1.01    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   98.99
05:58:08 PM    4    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:58:08 PM    5    0.99    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.01
05:58:08 PM    6    4.04    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   95.96
05:58:08 PM    7    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00

05:58:08 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:58:09 PM  all    1.25    0.00    2.38    0.00    0.00    0.13    0.00    0.00    0.00   96.25
05:58:09 PM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:58:09 PM    1    4.04    0.00   10.10    0.00    0.00    0.00    0.00    0.00    0.00   85.86
05:58:09 PM    2    1.98    0.00    1.98    0.00    0.00    0.00    0.00    0.00    0.00   96.04
05:58:09 PM    3    2.02    0.00    6.06    0.00    0.00    0.00    0.00    0.00    0.00   91.92
05:58:09 PM    4    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:58:09 PM    5    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:58:09 PM    6    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:58:09 PM    7    0.99    0.00    0.99    0.00    0.00    0.00    0.00    0.00    0.00   98.02

Average:     CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
Average:     all    1.13    0.00    1.38    0.00    0.00    0.06    0.00    0.00    0.00   97.43
Average:       0    0.50    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.50
Average:       1    2.53    0.00    5.05    0.00    0.00    0.00    0.00    0.00    0.00   92.42
Average:       2    1.49    0.00    1.49    0.00    0.00    0.00    0.00    0.00    0.00   97.01
Average:       3    1.52    0.00    3.03    0.00    0.00    0.00    0.00    0.00    0.00   95.45
Average:       4    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
Average:       5    0.50    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.50
Average:       6    2.01    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   97.99
Average:       7    0.50    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   98.99
[root@node81 ~]#

ALL 的例子

mpstat -P ALL 1 2

[root@node81 ~]# mpstat -P ALL 1 2
Linux 4.14.148-202207281639.git553ed7f (node81) 	01/19/2023 	_x86_64_	(8 CPU)

05:59:25 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:59:26 PM  all    0.38    0.00    1.50    0.00    0.00    0.00    0.00    0.00    0.00   98.12
05:59:26 PM    0    1.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
05:59:26 PM    1    1.00    0.00    6.00    0.00    0.00    0.00    0.00    0.00    0.00   93.00
05:59:26 PM    2    0.00    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
05:59:26 PM    3    1.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
05:59:26 PM    4    0.00    0.00    4.04    0.00    0.00    0.00    0.00    0.00    0.00   95.96
05:59:26 PM    5    1.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
05:59:26 PM    6    0.99    0.00    0.99    0.00    0.00    0.00    0.00    0.00    0.00   98.02
05:59:26 PM    7    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00

05:59:26 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:59:27 PM  all    0.63    0.00    0.25    0.00    0.00    0.00    0.00    0.00    0.00   99.12
05:59:27 PM    0    0.00    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
05:59:27 PM    1    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:59:27 PM    2    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:59:27 PM    3    2.00    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   97.00
05:59:27 PM    4    0.99    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.01
05:59:27 PM    5    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:59:27 PM    6    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:59:27 PM    7    0.00    0.00    0.99    0.00    0.00    0.00    0.00    0.00    0.00   99.01

Average:     CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
Average:     all    0.50    0.00    0.88    0.00    0.00    0.00    0.00    0.00    0.00   98.62
Average:       0    0.50    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   99.00
Average:       1    0.50    0.00    3.02    0.00    0.00    0.00    0.00    0.00    0.00   96.48
Average:       2    0.00    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   99.50
Average:       3    1.50    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   98.00
Average:       4    0.50    0.00    2.00    0.00    0.00    0.00    0.00    0.00    0.00   97.50
Average:       5    0.50    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00   99.50
Average:       6    0.50    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   99.00
Average:       7    0.00    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   99.50
[root@node81 ~]#

重点:

  • 0 是第一个 CPU

  • all 是所有处理器之间的全局平均值

-I { keyword [,...] | ALL }

作用

  • 输出中断统计信息

  • keyword 可以输入:CPU、SCPU、SUM、ALL

  • CPU:显示每秒中断数量,从 /proc/interrupts 读取数据

  • SCPU:显示每秒软中断数量,从 /proc/softirqs 读取数据

  • SUM:显示每个处理器的中断总数

  • ALL:输出上面三个关键字的所有内容

SCPU 的例子

mpstat -I SCPU 1 2 -P ALL

[root@node81 ~]# mpstat -I SCPU 1 2 -P ALL
Linux 4.14.148-202207281639.git553ed7f (node81) 	01/19/2023 	_x86_64_	(8 CPU)

05:59:53 PM  CPU       HI/s    TIMER/s   NET_TX/s   NET_RX/s    BLOCK/s IRQ_POLL/s  TASKLET/s    SCHED/s  HRTIMER/s      RCU/s
05:59:54 PM    0       0.00       9.00       1.00       0.00       0.00       0.00       0.00      12.00       0.00       8.00
05:59:54 PM    1       0.00      11.00       0.00       3.00       0.00       0.00       0.00       8.00       0.00      10.00
05:59:54 PM    2       0.00      36.00       0.00       4.00       0.00       0.00       0.00      18.00       0.00      15.00
05:59:54 PM    3       0.00       9.00       0.00       1.00       0.00       0.00       0.00       9.00       0.00       7.00
05:59:54 PM    4       0.00       6.00       0.00       2.00       0.00       0.00       0.00       6.00       0.00       5.00
05:59:54 PM    5       0.00      98.00       0.00      14.00       0.00       0.00       0.00      23.00       0.00      51.00
05:59:54 PM    6       0.00      13.00       0.00       1.00       0.00       0.00       0.00       7.00       0.00       9.00
05:59:54 PM    7       0.00     114.00       0.00      16.00       0.00       0.00       0.00      31.00       0.00      58.00

05:59:54 PM  CPU       HI/s    TIMER/s   NET_TX/s   NET_RX/s    BLOCK/s IRQ_POLL/s  TASKLET/s    SCHED/s  HRTIMER/s      RCU/s
05:59:55 PM    0       0.00      27.00       0.00      18.00       1.00       0.00       0.00      18.00       0.00      24.00
05:59:55 PM    1       0.00      55.00       0.00       9.00       0.00       0.00       0.00      17.00       0.00      40.00
05:59:55 PM    2       0.00      70.00       0.00      17.00       0.00       0.00       0.00      31.00       0.00      44.00
05:59:55 PM    3       0.00      37.00       0.00      30.00       0.00       0.00       2.00      14.00       0.00      31.00
05:59:55 PM    4       0.00      26.00       0.00       8.00       0.00       0.00       0.00      15.00       0.00      19.00
05:59:55 PM    5       0.00     109.00       0.00      18.00       0.00       0.00       0.00      33.00       0.00      67.00
05:59:55 PM    6       0.00      55.00       0.00       7.00       0.00       0.00       0.00      16.00       0.00      34.00
05:59:55 PM    7       0.00      96.00       0.00      14.00       0.00       0.00       0.00      25.00       0.00      55.00

Average:     CPU       HI/s    TIMER/s   NET_TX/s   NET_RX/s    BLOCK/s IRQ_POLL/s  TASKLET/s    SCHED/s  HRTIMER/s      RCU/s
Average:       0       0.00      18.00       0.50       9.00       0.50       0.00       0.00      15.00       0.00      16.00
Average:       1       0.00      33.00       0.00       6.00       0.00       0.00       0.00      12.50       0.00      25.00
Average:       2       0.00      53.00       0.00      10.50       0.00       0.00       0.00      24.50       0.00      29.50
Average:       3       0.00      23.00       0.00      15.50       0.00       0.00       1.00      11.50       0.00      19.00
Average:       4       0.00      16.00       0.00       5.00       0.00       0.00       0.00      10.50       0.00      12.00
Average:       5       0.00     103.50       0.00      16.00       0.00       0.00       0.00      28.00       0.00      59.00
Average:       6       0.00      34.00       0.00       4.00       0.00       0.00       0.00      11.50       0.00      21.50
Average:       7       0.00     105.00       0.00      15.00       0.00       0.00       0.00      28.00       0.00      56.50
[root@node81 ~]#

SUM 的例子

显示所有 CPU 平均中断次数

mpstat -I SUM 1 2

[root@node81 ~]# mpstat -I SUM 1 2
Linux 4.14.148-202207281639.git553ed7f (node81) 	01/19/2023 	_x86_64_	(8 CPU)

06:00:15 PM  CPU    intr/s
06:00:16 PM  all   1597.00
06:00:17 PM  all   3912.00
Average:     all   2754.50
[root@node81 ~]# 

显示每个 CPU 的中断次数、所有 CPU 平均中断次数

mpstat -I SCPU 1 2 -P ALL

[root@node81 ~]# mpstat -I SCPU 1 2 -P ALL
Linux 4.14.148-202207281639.git553ed7f (node81) 	01/19/2023 	_x86_64_	(8 CPU)

06:00:34 PM  CPU       HI/s    TIMER/s   NET_TX/s   NET_RX/s    BLOCK/s IRQ_POLL/s  TASKLET/s    SCHED/s  HRTIMER/s      RCU/s
06:00:35 PM    0       0.00      40.00       0.00       8.00       0.00       0.00       0.00      24.00       0.00      24.00
06:00:35 PM    1       0.00      65.00       0.00       7.00       0.00       0.00       0.00      24.00       0.00      43.00
06:00:35 PM    2       0.00      36.00       0.00       3.00       0.00       0.00       0.00      19.00       0.00      27.00
06:00:35 PM    3       0.00      23.00       0.00       0.00       0.00       0.00       0.00       9.00       0.00      17.00
06:00:35 PM    4       0.00      46.00       0.00      11.00       0.00       0.00       0.00      28.00       0.00      33.00
06:00:35 PM    5       0.00     183.00       0.00      26.00       0.00       0.00       0.00      49.00       0.00      98.00
06:00:35 PM    6       0.00      38.00       0.00       0.00       0.00       0.00       0.00      18.00       0.00      30.00
06:00:35 PM    7       0.00     150.00       0.00      16.00       0.00       0.00       0.00      42.00       0.00      81.00

06:00:35 PM  CPU       HI/s    TIMER/s   NET_TX/s   NET_RX/s    BLOCK/s IRQ_POLL/s  TASKLET/s    SCHED/s  HRTIMER/s      RCU/s
06:00:36 PM    0       0.00      19.00       0.00       0.00       1.00       0.00       0.00      18.00       0.00      13.00
06:00:36 PM    1       0.00      80.00       0.00      20.00       0.00       0.00       0.00      37.00       0.00      49.00
06:00:36 PM    2       0.00      75.00       0.00      16.00       0.00       0.00       0.00      29.00       0.00      43.00
06:00:36 PM    3       0.00      30.00       0.00       5.00       0.00       0.00       2.00      13.00       0.00      22.00
06:00:36 PM    4       0.00      46.00       0.00       5.00       0.00       0.00       0.00      28.00       0.00      28.00
06:00:36 PM    5       0.00      96.00       0.00      16.00       0.00       0.00       0.00      33.00       0.00      54.00
06:00:36 PM    6       0.00      25.00       0.00       1.00       0.00       0.00       0.00      16.00       0.00      16.00
06:00:36 PM    7       0.00     152.00       0.00      21.00       0.00       0.00       0.00      44.00       0.00      74.00

Average:     CPU       HI/s    TIMER/s   NET_TX/s   NET_RX/s    BLOCK/s IRQ_POLL/s  TASKLET/s    SCHED/s  HRTIMER/s      RCU/s
Average:       0       0.00      29.50       0.00       4.00       0.50       0.00       0.00      21.00       0.00      18.50
Average:       1       0.00      72.50       0.00      13.50       0.00       0.00       0.00      30.50       0.00      46.00
Average:       2       0.00      55.50       0.00       9.50       0.00       0.00       0.00      24.00       0.00      35.00
Average:       3       0.00      26.50       0.00       2.50       0.00       0.00       1.00      11.00       0.00      19.50
Average:       4       0.00      46.00       0.00       8.00       0.00       0.00       0.00      28.00       0.00      30.50
Average:       5       0.00     139.50       0.00      21.00       0.00       0.00       0.00      41.00       0.00      76.00
Average:       6       0.00      31.50       0.00       0.50       0.00       0.00       0.00      17.00       0.00      23.00
Average:       7       0.00     151.00       0.00      18.50       0.00       0.00       0.00      43.00       0.00      77.50
[root@node81 ~]#

文章作者: Gavin Wang
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Gavin Wang !
  目录