How do I use the vmstat command?

For a more concise understanding of system performance, try vmstat. With vmstat, it is possible to get an overview of process, memory, swap, I/O, system, and CPU activity in one line of numbers:

procs memory swap io system cpu
r b swpd free buff cache si so bi bo in cs us sy id wa
0 0 5276 315000 130744 380184 1 1 2 24 14 50 1 1 47 0

The first line divides the fields in six categories, including process, memory, swap, I/O, system, and CPU related statistics. The second line further identifies the contents of each field, making it easy to quickly scan data for specific statistics.

The process-related fields are:

r — The number of runnable processes waiting for access to the CPU

b — The number of processes in an uninterruptible sleep state

The memory-related fields are:

swpd — The amount of virtual memory used

free — The amount of free memory

buff — The amount of memory used for buffers

cache — The amount of memory used as page cache

The swap-related fields are:

si — The amount of memory swapped in from disk

so — The amount of memory swapped out to disk

The I/O-related fields are:

bi — Blocks sent to a block device

bo — Blocks received from a block device

The system-related fields are:

in — The number of interrupts per second

cs — The number of context switches per second

The CPU-related fields are:

us — The percentage of the time the CPU ran user-level code

sy — The percentage of the time the CPU ran system-level code

id — The percentage of the time the CPU was idle

wa — I/O wait

When vmstat is run without any options, only one line is displayed. This line contains averages, calculated from the time the system was last booted.

However, most system administrators do not rely on the data in this line, as the time over which it was collected varies. Instead, most administrators take advantage of vmstat’s ability to repetitively display resource utilization data at set intervals. For example, the command vmstat 1 displays one new line of utilization data every second, while the command vmstat 1 10 displays one new line per second, but only for the next ten seconds.

In the hands of an experienced administrator, vmstat can be used to quickly determine resource utilization and performance issues. But to gain more insight into those issues, a different kind of tool is required — a tool capable of more in-depth data collection and analysis.

Share on Twitter
Share on Facebook




Friday November 27th starts at 9am EST.
While supplies last!