摘要:vmstat用法
Abstract: usage of vmstat
注记
vmstat - virtual memory statistics
概要
1 | vmstat [-a] [-n] [-S unit] [delay [ count]] |
描述
vmstat命令打印关于进程,内存,分页,块IO,陷阱和CPU活动的信息。
选项说明
-a
: 显示活跃/非活跃内存-f
: 不与其他选项同时使用,显示系统从启动到现在fork(包含fork、vfork、clone系统调用)次数,等同于创建的任务数。不重复显示。-m
: 显示板子(网卡等)信息-n
: 让表头在刷新显示过程中只显示一次-s
: 显示一系列事件总数和内存统计,不重复显示delay
: 更新时间,如果没有设置这个参数,则显示的是从系统启动到现在的均值count
: 刷新次数-d
: 磁盘统计信息-w
: 扩大打印列宽-p
: 指定磁盘分区,获得更详细的统计信息。-S
: 指定单位k/K/m/M
分别表示:1000/1024/1000000/1048576
-V
: 显示版本信息
VM模式显示字段说明
Procs
r
: 等待运行的进程数b
: 不可中断的休眠进程数
Memory
swpd
: 虚拟内存使用量free
: 空闲内存buff
: 作为缓冲区的内存数cache
: 作为加速缓存的内存数inactive
: 不活跃的内存active
: 活跃内存
Swap
si
: 从磁盘换入占用内存数so
: 换出到磁盘的内存数
IO
bi
: 从块设备输入的块数bo
: 从块设备输出的块数
System
in
: 每秒中断次数(包含时钟中断)cs
: 每秒上下文切换次数
CPU
下面的指标是CPU时间的百分比
us
: 用户区代码CPU时间sy
: 内核代码CPU时间id
: 空闲CPU时间wa
: IO等待时间st
: 从虚拟机偷的CPU时间
磁盘模式显示选项说明
Reads
total
: 成功读出的总量merged
: 单次I/O读操作的量(合并到一次)sectors
: 成功读取的扇区数ms
: 读操作的时间
Writes
total
: 成功写入的总量merged
: 单次I/O写操作的量(合并到一次)sectors
: 成功写入的扇区数ms
: 写操作的时间
IO
cur
: 当前正在进行的I/Os
: I/O消耗的时间(秒)
重要
vmstat不需要特殊的权限。当前所有linux的块大小都是1024 bytes。旧版内核可能是512 bytes 2048 bytes 或 4096bytes。
示例:
在CPU密集型机器上:
在GPU机器上:
参考
- vmstat man page