Current File : //usr/share/man/zh_CN.UTF-8/man1m/mpstat.1m
'\" te
.\" Copyright (c) 2004, 2014, Oracle and/or its affiliates.All rights reserved.
.TH mpstat 1M "2014 年 9 月 9 日" "SunOS 5.11" "系统管理命令"
.SH 名称
mpstat \- 报告每处理器或每处理器集统计信息
.SH 用法概要
.LP
.nf
\fB/usr/bin/mpstat\fR [\fB-amq\fR] [-A core|soc|\fIbins\fR] [-k keys] [-o num]
     [\fB-p\fR | \fB-P\fR \fIset\fR] [\fB-T\fR d | u] [-I statfile] [-O statfile]
     [\fIinterval\fR [\fIcount\fR]]
.fi

.SH 描述
.sp
.LP
\fBmpstat\fR 命令以表格形式报告处理器统计信息。表中的每一行代表一个处理器的活动。第一个表汇总自引导后的所有活动。后续的每一个表汇总上一间隔期间的活动。除非另有说明,否则所有值都将是作为每秒的事件数列出的速率。
.sp
.LP
执行内核状态命令期间,可以更改内核的 \fBstate\fR。如果相关,状态更改消息会包括在 \fBmpstat\fR 输出中,以下列形式之一显示:
.sp
.in +2
.nf
<<processor 3 moved from pset: -1 to: 1>>
<<pset destroyed: 1>>
<<pset created: 1>>
<<processors added: 1, 3>>
<<processors removed: 1, 3>>
.fi
.in -2
.sp

.sp
.LP
\fBmpstat\fR 命令报告以下信息:
.sp
.ne 2
.mk
.na
\fB\fBCPU\fR|\fBSET\fR|\fBCOR\fR|\fBSOC\fR|\fBBIN\fR\fR
.ad
.sp .6
.RS 4n
.sp
.ne 2
.mk
.na
\fB\fBCPU\fR\fR
.ad
.sp .6
.RS 4n
当省略了 \fB-a\fR 和 \fB-A\fR 选项时,是为其显示统计信息的处理器 ID。
.RE

.sp
.ne 2
.mk
.na
\fB\fBSET\fR\fR
.ad
.sp .6
.RS 4n
对于 \fB-a\fR 选项,是为其聚合统计信息的处理器集 ID。
.RE

.sp
.ne 2
.mk
.na
\fB\fBCOR\fR\fR
.ad
.sp .6
.RS 4n
对于 \fB-A\fR \fBcore\fR 选项,是为其聚合统计信息的核心 ID。
.RE

.sp
.ne 2
.mk
.na
\fB\fBSOC\fR\fR
.ad
.sp .6
.RS 4n
对于 \fB-A\fR \fBsoc\fR 选项,是针对其聚合统计信息的套接字 ID。
.RE

.sp
.ne 2
.mk
.na
\fB\fBBIN\fR\fR
.ad
.sp .6
.RS 4n
对于 \fB-A\fR \fIbins\fR 选项,是针对其聚合统计信息的 Bin 序号。
.RE

.RE

.sp
.ne 2
.mk
.na
\fB\fBminf\fR\fR
.ad
.sp .6
.RS 4n
较小的故障
.RE

.sp
.ne 2
.mk
.na
\fB\fBmjf\fR\fR
.ad
.sp .6
.RS 4n
较大的故障
.RE

.sp
.ne 2
.mk
.na
\fB\fBxcal\fR\fR
.ad
.sp .6
.RS 4n
处理器间的交叉调用
.RE

.sp
.ne 2
.mk
.na
\fB\fBintr\fR\fR
.ad
.sp .6
.RS 4n
中断
.RE

.sp
.ne 2
.mk
.na
\fB\fBithr\fR\fR
.ad
.sp .6
.RS 4n
作为线程的中断(不是对时钟中断进行计数)
.RE

.sp
.ne 2
.mk
.na
\fB\fBcsw\fR\fR
.ad
.sp .6
.RS 4n
上下文切换
.RE

.sp
.ne 2
.mk
.na
\fB\fBicsw\fR\fR
.ad
.sp .6
.RS 4n
偶然上下文切换
.RE

.sp
.ne 2
.mk
.na
\fB\fBmigr\fR\fR
.ad
.sp .6
.RS 4n
线程迁移(至其他处理器)
.RE

.sp
.ne 2
.mk
.na
\fB\fBsmtx\fR\fR
.ad
.sp .6
.RS 4n
互斥锁上的自旋锁(第一次尝试时未获得锁)
.RE

.sp
.ne 2
.mk
.na
\fB\fBsrw\fR\fR
.ad
.sp .6
.RS 4n
读取器/写入器锁上的自旋锁(第一次尝试时未获得锁)
.RE

.sp
.ne 2
.mk
.na
\fB\fBsyscl\fR\fR
.ad
.sp .6
.RS 4n
系统调用
.RE

.sp
.ne 2
.mk
.na
\fB\fBusr\fR\fR
.ad
.sp .6
.RS 4n
用户时间百分比
.RE

.sp
.ne 2
.mk
.na
\fB\fBsys\fR\fR
.ad
.sp .6
.RS 4n
系统时间百分比
.RE

.sp
.ne 2
.mk
.na
\fB\fBst\fR\fR
.ad
.sp .6
.RS 4n
虚拟机管理程序所用 \fBCPU\fR 时间的百分比。在物理硬件上运行时,始终为零。
.RE

.sp
.ne 2
.mk
.na
\fB\fBidl\fR\fR
.ad
.sp .6
.RS 4n
空闲时间百分比
.RE

.sp
.ne 2
.mk
.na
\fB\fBsze\fR\fR
.ad
.sp .6
.RS 4n
请求的处理器集中的处理器数
.RE

.sp
.ne 2
.mk
.na
\fB\fBset\fR\fR
.ad
.sp .6
.RS 4n
每个 \fBCPU\fR 的处理器集成员关系
.RE

.SH 选项
.sp
.LP
支持以下选项:
.sp
.ne 2
.mk
.na
\fB\fB-a\fR\fR
.ad
.sp .6
.RS 4n
按处理器集聚合输出。按处理器集对输出排序。缺省输出是按 \fBCPU\fR 编号排序。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-A\fR \fBcore\fR\fR
.ad
.sp .6
.RS 4n
按核心 ID 聚合 CPU 输出。具有相同核心 ID 的数据行将聚合到一个行中。缺省情况下,列将替换为小计。而 \fB-m\fR 选项将输出列平均值。
.sp
\fB-A\fR 选项与用于按处理器集进行聚合的 \fB-a\fR 选项不兼容。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-A\fR \fBsoc\fR\fR
.ad
.sp .6
.RS 4n
按套接字 ID 聚合 CPU 输出。具有相同套接字 ID 的数据行聚合为一行。缺省情况下,列将替换为小计。而 \fB-m\fR 选项将输出列平均值。
.sp
\fB-A\fR 选项与用于按处理器集进行聚合的 \fB-a\fR 选项不兼容。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-A\fR \fIbins\fR\fR
.ad
.sp .6
.RS 4n
将每个抽样期间内的行聚合到容器 (bin) 中,按其出现顺序对其分组,并针对每个 bin 聚合行。在执行 bin 聚合步骤之前,可以使用 \fB-k\fR 选项来更改行顺序。\fBsze\fR 列会输出每个 bin 中的 CPU 数。\fBBIN\fR 列替换 \fBCPU\fR 列并输出每个 bin 的序号。
.sp
先处理按 ID (\fB-A\fR \fBcore\fR|\fBsoc\fR) 的聚合,然后进行排序 (\fB-k\fR)。接下来按 bin (\fB-A\fR \fIbins\fR) 进行分组。最后,每个间隔输出的输出行的数量可能会受 \fB-o \fR 限制。
.sp
\fB-A\fR 选项与用于按处理器集进行聚合的 \fB-a\fR 选项不兼容。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-I\fR \fIstatfile\fR\fR
.ad
.sp .6
.RS 4n
重放之前保存在 \fIstatfile\fR 中的数据。通过指定 \fB-O\fR 来创建用于重放的数据文件。该选项尤其适用于分析具有大量 CPU 的计算机的统计信息。可以使用不同的排序和聚合选项对文件进行多次重新处理。
.sp
\fB-I\fR 选项不能与 interval 和 count 一起指定。
.sp
如果文件名称为 \fB—\fR(连字符),则将从标准输入进行读取。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-k\fR \fIkey1\fR,...\fR
.ad
.sp .6
.RS 4n
每个抽样期间内的行依次按照 \fIkey1\fR、\fIkey2\fR 等从高到低排序。每个 key 可以是任何列标题,例如 \fBxcal\fR、\fBintr\fR、\fBsys\fR 等。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-m\fR\fR
.ad
.sp .6
.RS 4n
当使用 \fB-a\fR 或 \fB-A\fR 选项来聚合多个 CPU 的数据时,将列显算术平均值而不是总和。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-o\fR \fInum\fR\fR
.ad
.sp .6
.RS 4n
在应用排序和聚合选项后,仅列显每个抽样期间内的前 \fInum\fR 行。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-O\fR \fIstatfile\fR\fR
.ad
.sp .6
.RS 4n
将所有数据保存到 \fIstatfile\fR 中。以后可以使用 \fB-I\fR 重放该数据。
.sp
如果文件名为 \fB—\fR(连字符),则将写入到标准输出。
.sp
\fB-O\fR 的用途是捕获所有的可用数据。它与以下数据缩减选项不兼容:\fB-a\fR、\fB-A\fR、\fB-k\fR、\fB-m\fR、\fB-o\fR、\fB-p\fR 和 \fB-P\fR。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-p\fR\fR
.ad
.sp .6
.RS 4n
报告每个 \fBCPU\fR 的处理器集成员关系。按处理器集对输出排序。缺省输出是按 \fBCPU\fR 编号排序。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-P\fR \fIset\fR\fR
.ad
.sp .6
.RS 4n
只显示指定 \fIset\fR 中的处理器。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-q\fR\fR
.ad
.sp .6
.RS 4n
隐藏与状态更改相关的消息。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-T\fR \fBu\fR | \fBd\fR\fR
.ad
.sp .6
.RS 4n
指定 \fBu\fR 表示时间的内部表示形式的印刷表示形式。请参见 \fBtime\fR(2)。指定 \fBd\fR 表示标准日期格式。请参见\fBdate\fR(1)。
.RE

.sp
.ne 2
.mk
.na
\fB\fIinterval\fR\fR
.ad
.sp .6
.RS 4n
每 \fIinterval\fR 秒报告一次。
.RE

.sp
.ne 2
.mk
.na
\fB\fIcount\fR\fR
.ad
.sp .6
.RS 4n
只输出 \fIcount\fR 报告。
.RE

.SH 示例
.sp
.LP
在 80 个字符宽的显示屏上,下面的示例输出会将一到七个字符进行换行。通过将窗口变宽,可以避免此换行。
.LP
\fB示例 1 \fR使用 \fBmpstat\fR 生成用户和系统操作统计信息
.sp
.LP
以下命令按照五秒钟间隔在两个报告中生成处理器统计信息。该命令显示每个 \fBCPU\fR 的处理器集成员关系。用户 (\fBusr\fR) 和系统 (\fBsys\fR) 操作的缺省输出按 \fBCPU\fR 编号排序,按\fI处理器集\fR聚合。

.sp
.in +2
.nf
example% \fBmpstat -ap 5 2\fR


SET minf mjf xcal intr ithr csw icsw migr smtx srw syscl usr sys st idl sze
  0    6   0  355  291  190  22    0    0    0   0    43   0   2  0  43   1
  1   24  17  534  207  200  70    1    0    2   0   600   4   1  1  83   2
  2   19   7  353  325  318  44    0    0    5   0   345   1   1  0  94   3
  3   36   2  149  237  236  14    0    0    4   0    97   0   0  0  98   2
SET minf mjf xcal intr ithr csw icsw migr smtx srw syscl usr sys st idl sze
  0    1   0  720  405  304  55    0    0   18   0    12   0  15  0  81   1
  1    0  69 1955  230  200 313   33    4   41   9  7086  34  10  0  19   2
  2    0  46  685  314  300 203   11    0   54   1  5287  36   6  2  26   3
  3    0   0   14  386  384   0    0    0    0   0     0   0   0  0 100   2
.fi
.in -2
.sp

.LP
\fB示例 2 \fR显示符合过滤要求的 CPU。
.sp
.LP
以下命令显示 \fBintr\fR 比率最高的三个 CPU。

.sp
.in +2
.nf
example% \fBmpstat -k intr -o 3\fR
CPU minf mjf xcal  intr ithr  csw icsw migr smtx  srw syscl  usr sys  st idl
 56 1143   5  975  4238   82  465   74   53  124    0 198163  42  17   1  40
123 1189   6 1315  1030  890  461   65   53  122    0 24383   27  12   0  62
  4 1184   5 1040   149   70  502   73   55  113    0 82039   31  13   0  56
.fi
.in -2
.sp

.LP
\fB示例 3 \fR将多个 CPU 聚合为四组(按四分位数分组)
.sp
.LP
以下命令按 \fBsys\fR 时间将 256 CPU 聚合为四组(按四分位数分组)。

.sp
.in +2
.nf
example% \fBmpstat -A 4 -k sys\fR
BIN minf mjf xcal intr ithr  csw icsw migr smtx  srw syscl  usr sys  st idl sze

0   18   0 5811  7105    1 22154   17 9529 1176   0    72    1  79   1  18  64
1    0   0 4624  1006   12 1321   42  418  175    0  3591   36  37   0  27  64
2 1195   5 1056    92   10  526   74   56  104    0 45876   27  12   0  61  64
3    0   0    2    18    8   10    0    0    0    0     1    0   0   0 100  64
.fi
.in -2
.sp

.LP
\fB示例 4 \fR保存统计信息供以后处理
.sp
.LP
以下命令将保存统计信息供以后处理,并按计算机的核心 ID 聚合统计信息(每个核心八个 CPU)。

.sp
.in +2
.nf
example% \fBmpstat -O /tmp/t1; mpstat -I /tmp/t1 -A core\fR
COR minf mjf xcal  intr ithr  csw icsw migr smtx  srw syscl  usr sys  st idl sze
514    0   0  124    45    0   21    0    3    1    0     0    0   3   0  97   8
521    0   0   16     5    0    1    0    0    0    0     0    0   0   1  99   8
528    0   0   11     5    0    3    0    0    0    0     0    0   0   0 100   8
535    0   0    7     4    0    1    0    0    0    0     0    0   0   0 100   8
542    0   0    7     4    0    1    0    0    0    0     0    0   0   0 100   8
549    0   0   10     4    0    1    0    0    0    0     0    0   0   0 100   8
556    0   0   10     5    0    1    0    0    0    0     0    0   0   0 100   8
563    0   0    8     4    0    1    0    0    0    0     0    0   0   0 100   8
.fi
.in -2
.sp

.SH 属性
.sp
.LP
有关下列属性的说明,请参见 \fBattributes\fR(5):
.sp

.sp
.TS
tab() box;
cw(2.75i) |cw(2.75i) 
lw(2.75i) |lw(2.75i) 
.
属性类型属性值
_
可用性system/core-os
_
接口稳定性请参见下文。
.TE

.sp
.LP
调用正在发展中。用户可读的输出不稳定。
.SH 另请参见
.sp
.LP
\fBsar\fR(1)、\fBdate\fR(1)、\fBiostat\fR(1M)、\fBsar\fR(1M)、\fBvmstat\fR(1M)、\fBtime\fR(2)、\fBattributes\fR(5)
.SH 附注
.sp
.LP
由于生成的百分比数字存在舍入误差,\fBCPU\fR 使用总量可能与 100 略有差别。
.sp
.LP
用于 \fBCPU\fR 处理的总时间是针对用户和系统操作报告的 \fBusr\fR 和 \fBsys\fR 输出值的总和。\fBidl\fR 值报告 \fBCPU\fR 因暂停磁盘 I/O 操作以外的其他任何原因而处于空闲状态的时间。 
.sp
.LP
运行带有 \fB-x\fR 选项的 \fBiostat\fR 命令可以报告 \fBsvc_t\fR 输出中的 I/O 服务时间。\fBiostat\fR 实用程序也报告相同的 \fBst\fR、用户 (\fBus\fR) 以及系统 (\fBsy\fR) 统计信息。有关更多信息,请参见 \fBiostat\fR(1M)。
.sp
.LP
在 \fBzone\fR 中执行时,如果池工具处于活动状态,\fBmpstat\fR(1M) 仅提供该 \fBzone\fR 绑定到的池中的处理器集内的那些处理器的信息。