Report virtual memory statistics: processes, memory, paging, block IO, traps, and cpu activity.

      vmstat [-a] [-n] [delay [ count]]
      vmstat [-f] [-s] [-m]
      vmstat [-S unit]
      vmstat [-d]
      vmstat [-p disk-partition]
      vmstat [-V] 


   -a   Display active/inactive memory, given a 2.5.41 kernel or better.

   -f   Display the number of forks since boot.
        This includes the fork, vfork, and clone system calls, and is
        equivalent to the total number of tasks created.
        Each process is represented by one or more tasks, depending on
        thread usage. This display does not repeat.

   -m   Displays slabinfo.

   -n   Cause the header to be displayed only once rather than periodically.

   -s   Display a table of various event counters and memory statistics.
        This display does not repeat.

 delay  The delay between updates in seconds.
        If no delay is specified, only one report is printed with the average values since boot.

 count  The number of updates. If no count is specified and delay is defined, count defaults to infinity.

   -d   Report disk statistics (2.5.70 or above required)

   -p followed by some partition name for detailed statistics (2.5.70 or above required)

   -S followed by k or K or m or M switches outputs between 1000, 1024, 1000000, or 1048576 bytes

   -V   Display version information.  

Field Description For Vm Mode


r: The number of processes waiting for run time.
b: The number of processes in uninterruptible sleep.


swpd: the amount of virtual memory used.
free: the amount of idle memory.
buff: the amount of memory used as buffers.
cache: the amount of memory used as cache.
inact: the amount of inactive memory. (-a option)
active: the amount of active memory. (-a option)


si: Amount of memory swapped in from disk (/s).
so: Amount of memory swapped to disk (/s).


bi: Blocks received from a block device (blocks/s).
bo: Blocks sent to a block device (blocks/s).


in: The number of interrupts per second, including the clock.
cs: The number of context switches per second.


These are percentages of total CPU time.

us: Time spent running non-kernel code. (user time, including nice time)
sy: Time spent running kernel code. (system time)
id: Time spent idle. Prior to Linux 2.5.41, this includes IO-wait time.
wa: Time spent waiting for IO. Prior to Linux 2.5.41, included in idle.
st: Time stolen from a virtual machine. Prior to Linux 2.6.11, unknown.

Field Description For Disk Mode


total: Total reads completed successfully
merged: grouped reads (resulting in one I/O)
sectors: Sectors read successfully
ms: milliseconds spent reading


total: Total writes completed successfully
merged: grouped writes (resulting in one I/O)
sectors: Sectors written successfully
ms: milliseconds spent writing


cur: I/O in progress
s: seconds spent for I/O

Field Description For Disk Partition Mode

reads: Total number of reads issued to this partition
read sectors: Total read sectors for partition
writes : Total number of writes issued to this partition
requested writes: Total number of write requests made for partition

Field Description For Slab Mode

cache: Cache name
num: Number of currently active objects
total: Total number of available objects
size: Size of each object
pages: Number of pages with at least one active object
totpages: Total number of allocated pages
pslab: Number of pages per slab

vmstat does not require special permissions.

These reports are intended to help identify system bottlenecks. Linux vmstat does not count itself as a running process.

All linux blocks are currently 1024 bytes. Old kernels might report blocks as 512 bytes, 2048 bytes, or 4096 bytes.

Since procps 3.1.9, vmstat lets you choose units (k, K, m, M) default is K (1024 bytes) in the default mode

vmstat uses slabinfo 1.1 FIXME



“The moment one definitely commits oneself then Providence moves too. All sorts of things occur to help one that would never otherwise have occurred” ~ W.H. Murray

Related linux commands

iostat - Report CPU and i/o statistics.
sar(1), mpstat(1)
free - Display memory usage.
ps - Process status.
top - List processes running on the system.

Copyright © 1999-2024 SS64.com
Some rights reserved