vmstat
— report
statistics about kernel activities
vmstat |
[-c count]
[-M core]
[-N system]
[-w wait]
[disk ...] |
vmstat
reports certain kernel statistics
kept about process, virtual memory, disk, trap, and CPU activity. The
default behavior is to print a one-line summary of these statistics. The
-c
and -w
flags may be used
to continually report summaries.
The options are as follows:
-c
count
- Repeat the display count times. The first display is
for the time since a reboot and each subsequent report is for the time
period since the last display. If no wait interval
is specified, the default is 1 second.
-f
- Report on the number of
fork(2),
__tfork(3), and
vfork(2) system calls as
well as kernel thread creations since system startup, and the number of
pages of virtual memory involved in each.
-i
- Report on the number of interrupts taken by each device since system
startup.
-M
core
- Extract values associated with the name list from the specified core
instead of the running kernel.
-m
- Report on the usage of kernel dynamic memory listed first by size of
allocation and then by type of usage.
-N
system
- Extract the name list from the specified system instead of the running
kernel.
-s
- Display the contents of the uvmexp structure (see
uvm(9)), giving the total
number of several kinds of paging related events which have occurred since
system startup.
-t
- Report on the number of page in and page reclaims since system startup,
and the amount of time required by each.
-v
- Print more verbose information.
-w
wait
- Pause wait seconds between each display. If no
repeat count is specified, the default is
infinity.
-z
- When used with
-i
, also list devices which have
not yet generated an interrupt.
By default, vmstat
displays the following
information just once:
procs
- Information about the numbers of processes in various states.
r
- in run queue
b
- blocked for resources (I/O, paging, etc.)
w
- runnable or short sleeper (< 20 secs) but swapped
memory
- Information about the usage of virtual and real memory. Virtual pages
(reported in units of 1024 bytes) are considered active if they belong to
processes which are running or have run in the last 20 seconds.
avm
- active virtual pages
fre
- size of the free list
page
- Information about page faults and paging activity. These are averaged each
five seconds, and given in units per second.
flt
- page faults
re
- page reclaims (simulating reference bits)
at
- pages attached (found in free list)
pi
- pages paged in
po
- pages paged out
fr
- pages freed
sr
- pages scanned by clock algorithm
disks
- Disk transfers per second. Typically paging will be split across the
available drives. The header of the field is the first character of the
disk name and the unit number. If more than two disk drives are configured
in the system,
vmstat
displays only the first two
drives. To force vmstat
to display specific
drives, their names may be supplied on the command line.
traps
- Trap/interrupt rate averages per second over last 5 seconds.
int
- device interrupts per interval (including clock interrupts)
sys
- system calls per interval
cs
- CPU context switch rate (switches/interval)
cpu
- Breakdown of percentage usage of CPU time.
us
- user time for normal and low priority processes
sy
- system time
id
- CPU idle
- /bsd
- default kernel image
- /dev/kmem
- default memory file
The command vmstat -w 5
will print what
the system is doing every five seconds; this is a good choice of printing
interval since this is how often some of the statistics are sampled in the
system. Others vary every second and running the output for a while will
make it apparent which are recomputed every second.
The -c
and -w
options are only available with the default output.
This manual page lacks an incredible amount of detail.