You can use the vmstat command to report virtual memory statistics and information about system events such as CPU load, paging, number of context switches, device interrupts, and system calls. The vmstat command can also display statistics on swapping, cache flushing, and interrupts.
The following table describes the fields in the vmstat command output.
Table 13–1 Output From the vmstat Command
Category |
Field Name |
Description |
---|---|---|
procs |
|
Reports on the following: |
|
r |
The number of kernel threads in the dispatch queue |
|
b |
The number of blocked kernel threads that are waiting for resources |
|
w |
The number of swapped out LWPs that are waiting for processing resources to finish |
memory |
|
Reports on usage of real memory and virtual memory: |
|
swap |
Available swap space |
|
free |
Size of the free list |
page |
|
Reports on page faults and paging activity, in units per second: |
|
re |
Pages reclaimed |
|
mf |
Minor faults and major faults |
|
pi |
Kbytes paged in |
|
po |
Kbytes paged out |
|
fr |
Kbytes freed |
|
de |
Anticipated memory that is needed by recently swapped-in processes |
|
sr |
Pages scanned by the page daemon not currently in use. If sr does not equal zero, the page daemon has been running. |
disk |
|
Reports the number of disk operations per second, showing data on up to four disks |
faults |
|
Reports the trap/interrupt rates per second: |
|
in |
Interrupts per second |
|
sy |
System calls per second |
|
cs |
CPU context switch rate |
cpu |
|
Reports on the use of CPU time: |
|
us |
User time |
|
sy |
System time |
|
id |
Idle time |
For a more detailed description of this command, see the vmstat(1M) man page.
Collect virtual memory statistics by using the vmstat command with a time interval in seconds.
$ vmstat n |
where n is the interval in seconds between reports.
The following example shows the vmstat display of statistics that were gathered at five-second intervals.
$ vmstat 5 kthr memory page disk faults cpu r b w swap free re mf pi po fr de sr dd f0 s1 -- in sy cs us sy id 0 0 0 863160 365680 0 3 1 0 0 0 0 0 0 0 0 406 378 209 1 0 99 0 0 0 765640 208568 0 36 0 0 0 0 0 0 0 0 0 479 4445 1378 3 3 94 0 0 0 765640 208568 0 0 0 0 0 0 0 0 0 0 0 423 214 235 0 0 100 0 0 0 765712 208640 0 0 0 0 0 0 0 3 0 0 0 412 158 181 0 0 100 0 0 0 765832 208760 0 0 0 0 0 0 0 0 0 0 0 402 157 179 0 0 100 0 0 0 765832 208760 0 0 0 0 0 0 0 0 0 0 0 403 153 182 0 0 100 0 0 0 765832 208760 0 0 0 0 0 0 0 0 0 0 0 402 168 177 0 0 100 0 0 0 765832 208760 0 0 0 0 0 0 0 0 0 0 0 402 153 178 0 0 100 0 0 0 765832 208760 0 18 0 0 0 0 0 0 0 0 0 407 165 186 0 0 100 |
Run the vmstat -s command to show how many system events have taken place since the last time the system was booted.
$ vmstat -s 0 swap ins 0 swap outs 0 pages swapped in 0 pages swapped out 522586 total address trans. faults taken 17006 page ins 25 page outs 23361 pages paged in 28 pages paged out 45594 total reclaims 45592 reclaims from free list 0 micro (hat) faults 522586 minor (as) faults 16189 major faults 98241 copy-on-write faults 137280 zero fill page faults 45052 pages examined by the clock daemon 0 revolutions of the clock hand 26 pages freed by the clock daemon 2857 forks 78 vforks 1647 execs 34673885 cpu context switches 65943468 device interrupts 711250 traps 63957605 system calls 3523925 total name lookups (cache hits 99%) 92590 user cpu 65952 system cpu 16085832 idle cpu 7450 wait cpu |
Run vmstat -S to show swapping statistics.
$ vmstat -S kthr memory page disk faults cpu r b w swap free si so pi po fr de sr dd f0 s1 -- in sy cs us sy id 0 0 0 862608 364792 0 0 1 0 0 0 0 0 0 0 0 406 394 213 1 0 99 |
The swapping statistics fields are described in the following list. For a description of the other fields, see Table 13–1.
Average number of LWPs that are swapped in per second
Number of whole processes that are swapped out
The vmstat command truncates the output of si and so fields. Use the sar command to display a more accurate accounting of swap statistics.
The following example shows output from the vmstat -i command.
$ vmstat -i interrupt total rate -------------------------------- clock 52163269 100 esp0 2600077 4 zsc0 25341 0 zsc1 48917 0 cgsixc0 459 0 lec0 400882 0 fdc0 14 0 bppc0 0 0 audiocs0 0 0 -------------------------------- Total 55238959 105 |