System Administration Guide

Displaying Virtual Memory Statistics (vmstat)

You can use the vmstat command to report virtual memory statistics and such information about system events 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.

Refer to vmstat(1M) for a more detailed description of this command.

How to Display Virtual Memory Statistics (vmstat)

Collect virtual memory statistics using the vmstat command with a time interval.


$  vmstat n

-n

Interval in seconds between reports. 

Table 64-1 describes the fields in the vmstat output.

Table 64-1 Output From the vmstat Command

Category 

Field Name 

Description 

procs

 

Reports the following states: 

 

r

The number of kernel threads in the dispatch queue 

 

b

Blocked kernel threads waiting for resources 

 

w

Swapped out LWPs waiting for processing resources to finish  

memory

 

Reports on usage of real 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 and major faults 

 

pi

Kbytes paged in 

 

po

Kbytes paged out 

 

fr

Kbytes freed 

 

de

Anticipated memory needed by recently swapped-in processes 

 

sr

Pages scanned by 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

Example--Displaying Virtual Memory Statistics

The following example shows the vmstat display of statistics gathered at five-second intervals.


$ vmstat 5
 procs    memory            page             disk      faults     cpu
r b w  swap free re  mf  pi  po  fr de sr f0 s3 -- --  in  sy  cs us sy  id
0 0 8 28312  668  0   9   2   0   1  0  0  0  1  0  0  10  61  82  1  2  97
0 0 3 31940  248  0  10  20   0  26  0 27  0  4  0  0  53 189 191  6  6  88
0 0 3 32080  288  3  19  49   6  26  0 15  0  9  0  0  75 415 277  6 15  79
0 0 3 32080  256  0  26  20   6  21  0 12  1  6  0  0 163 110 138  1  3  96
0 1 3 32060  256  3  45  52  28  61  0 27  5 12  0  0 195 191 223  7 11  82
0 0 3 32056  260  0   1   0   0   0  0  0  0  0  0  0   4  52  84  0  1  99

How to Display System Event Information

Run vmstat -s to show the total of various system events that have taken place since the system was last booted.


$ vmstat -s
      0 swap ins
       0 swap outs
       0 pages swapped in
       0 pages swapped out 
 1329913 total address trans. faults taken
   25270 page ins
    3787 page outs
   38082 pages paged in
   13417 pages paged out
    3034 total reclaims
    3033 reclaims from free list
  335879 micro (hat) faults
  994034 minor (as) faults
   24210 major faults
  300634 copy-on-write faults
  141744 zero fill page faults
   34341 pages examined by the clock daemon
       5 revolutions of the clock hand
   28134 pages freed by the clock daemon
   11174 forks
    1259 vforks
    9086 execs 
11479519 cpu context switches 
95234544 device interrupts 
 1426943 traps 
 9100502 system calls
 1939346 total name lookups (cache hits 88%)
     496 toolong
  185566 user cpu
  977189 system cpu
92045953 idle cpu 
  130914 wait cpu

How to Display Swapping Statistics

Run vmstat -S to show swapping statistics.


$ vmstat -S
 procs   memory       page              disk       faults        cpu
 r b w swap free si so pi po fr de sr f0 s1 s3 -- in sy cs     us sy id
 0 0 0 6224  5536 0  0  0 0  0  0  0  0  0  0  0  2  9  12     0  1  99

The additional fields are described in Table 64-2.

Table 64-2 Output From the vmstat -S Command

Field Name 

Description 

si

Average number of LWPs swapped in per second 

so

Number of whole processes swapped out 


Note -

The vmstat command truncates the output of both of these fields. Use the sar command to display a more accurate accounting of swap statistics.


How to Display Cache Flushing Statistics

Run vmstat -c to show cache flushing statistics for a virtual cache.


$ vmstat -c
flush statistics: (totals)
    usr      ctx     rgn    seg     pag     par
  14512    20201       0   1811 1857286  815505

It shows the total number of cache flushes since the last boot. The cache types are described in Table 64-3.

Table 64-3 Output From the vmstat -c Command

Cache Name 

Cache Type 

usr

User 

ctx

Context 

rgn

Region 

seg

Segment 

pag

Page 

par

Partial-page  

How to Display Interrupts Per Device

Run vmstat -i to show interrupts per device.


$ vmstat -i

Example--Displaying Interrupts Per Device

The following example shows output from the vmstat -i command.


$ vmstat -i
interrupt         total     rate
---------------------------------
clock         104638405      100
esp0            2895003        2
fdc0                  0        0
---------------------------------
Total         107533408      102