Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages


home | help
VMSTAT(8)		FreeBSD	System Manager's Manual		     VMSTAT(8)

     vmstat -- report virtual memory statistics

     vmstat [--libxo] [-afHhimoPsz] [-M	core [-N system]] [-c count] [-n devs]
	    [-p	type,if,pass] [-w wait]	[disks ...] [wait [count]]

     The vmstat	utility	reports	certain	kernel statistics kept about process,
     virtual memory, disk, trap	and cpu	activity.

     If	the -M option is not specified,	information is obtained	from the cur-
     rently running kernel via the sysctl(3) interface.	 Otherwise, informa-
     tion is read from the specified core file,	using the name list from the
     specified kernel image (or	from the default image).

     The options are as	follows:

	     Generate output via libxo(3) in a selection of different human
	     and machine readable formats.  See	xo_parse_args(3) for details
	     on	command	line arguments.

     -a	     When used with -i,	include	statistics about interrupts that have
	     never been	generated.

     -c	     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 repeat count	is specified,
	     and -w is specified, the default is infinity, otherwise the de-
	     fault is one.

     -f	     Report on the number fork(2), vfork(2) and	rfork(2) system	calls
	     since system startup, and the number of pages of virtual memory
	     involved in each.

     -h	     Changes memory columns into more easily human readable form.  The
	     default if	standard output	is a terminal device.

     -H	     Changes memory columns into straight numbers.  The	default	if
	     standard output is	not a terminal device (such as a script).

     -i	     Report on the number of interrupts	taken by each device since
	     system startup.

     -M	     Extract values associated with the	name list from the specified

     -N	     If	-M is also specified, extract the name list from the specified
	     system instead of the default, which is the kernel	image the sys-
	     tem has booted from.

     -m	     Report on the usage of kernel dynamic memory allocated using
	     malloc(9) by type.

     -n	     Change the	maximum	number of disks	to display from	the default of

     -o	     Display a list of virtual memory objects in the system and	the
	     resident memory used by each object.

     -P	     Report per-cpu system/user/idle cpu statistics.

     -p	     Specify which types of devices to display.	 There are three dif-
	     ferent categories of devices:

	     device type:
		     da		Direct Access devices
		     sa		Sequential Access devices
		     printer	Printers
		     proc	Processor devices
		     worm	Write Once Read	Multiple devices
		     cd		CD devices
		     scanner	Scanner	devices
		     optical	Optical	Memory devices
		     changer	Medium Changer devices
		     comm	Communication devices
		     array	Storage	Array devices
		     enclosure	Enclosure Services devices
		     floppy	Floppy devices

		     IDE	Integrated Drive Electronics devices
		     SCSI	Small Computer System Interface	devices
		     other	Any other device interface

		     pass	Passthrough devices

	     The user must specify at least one	device type, and may specify
	     at	most one device	type from each category.  Multiple device
	     types in a	single device type statement must be separated by com-

	     Any number	of -p arguments	may be specified on the	command	line.
	     All -p arguments are ORed together	to form	a matching expression
	     against which all devices in the system are compared.  Any	device
	     that fully	matches	any -p argument	will be	included in the	vmstat
	     output, up	to two devices,	or the maximum number of devices spec-
	     ified by the user.

     -s	     Display the contents of the sum structure,	giving the total num-
	     ber of several kinds of paging related events which have occurred
	     since system startup.

     -w	     Pause wait	seconds	between	each display.  If no repeat wait in-
	     terval is specified, the default is 1 second.  The	vmstat command
	     will accept and honor a non-integer number	of seconds.

     -z	     Report on memory used by the kernel zone allocator, uma(9), by

     The wait and count	arguments may be given after their respective flags at
     any point on the command line before the disks argument(s), or without
     their flags, as the final argument(s).  The latter	form is	accepted for
     backwards compatibility, but it is	preferred to use the forms with	-w and
     -c	to avoid ambiguity.

     By	default, vmstat	displays the following information:

     procs   Information about the number of threads in	various	states:

	     r	     running or	in run queue
	     b	     blocked for resources (i/o, paging, etc.)
	     w	     swapped out

     memory  Information about the usage of virtual and	real memory.

	     Mapped virtual memory is a	sum of all of the virtual pages	be-
	     longing to	mapped virtual memory objects.	Note that the entire
	     memory object's size is considered	mapped even if only a subset
	     of	the object's pages are currently mapped.  This statistic is
	     not related to the	active page queue which	is used	to track real

	     avm     mapped virtual memory (previously called active in	vmstat
	     fre     size of the free list

     page    Information about page faults and paging activity.	 These are
	     given in units per	second.

	     flt     total number of page faults
	     re	     pages reactivated (found in laundry or inactive queues)
	     pi	     pages paged in
	     po	     pages paged out
	     fr	     pages freed
	     sr	     pages scanned by page daemon

     disks   Disk operations per second	(this field is system dependent).
	     Typically paging will be split across the available drives.  The
	     header of the field is the	first two characters 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, unless
	     the user specifies	the -n argument	to increase the	number of
	     drives displayed.	This will probably cause the display to	exceed
	     80	columns, however.  To force vmstat to display specific drives,
	     their names may be	supplied on the	command	line.  The vmstat
	     utility defaults to show disks first, and then various other ran-
	     dom devices in the	system to add up to two	devices, if there are
	     that many devices in the system.  If devices are specified	on the
	     command line, or if a device type matching	pattern	is specified
	     (see above), vmstat will only display the given devices or	the
	     devices matching the pattern, and will not	randomly select	other
	     devices in	the system.

     faults  Trap/interrupt rates per second.

	     in	     device interrupts (including clock	interrupts)
	     sy	     system calls
	     cs	     cpu context switches

     cpu     Breakdown of percentage usage of CPU time.

	     us	     user time for normal and low priority processes
	     sy	     system and	interrupt time
	     id	     cpu idle

     /boot/kernel/kernel  default kernel namelist
     /dev/kmem		  default memory file

     The command:
	   vmstat -w 5
     will print	what the system	is doing every five seconds.

     The command:
	   vmstat -p da	-p cd -w 1
     will tell vmstat to select	the first two direct access or CDROM devices
     and display statistics on those devices, as well as other systems statis-
     tics every	second.

     fstat(1), netstat(1), nfsstat(1), ps(1), systat(1), libmemstat(3),
     libxo(3), xo_parse_args(3), gstat(8), iostat(8), pstat(8),	sysctl(8),
     malloc(9),	uma(9)

     The sections starting with	``Interpreting system activity'' in Installing
     and Operating 4.3BSD.

     The vmstat	utility	first appeared in 4.3BSD.

     The -c and	-w options are only available with the default output.

FreeBSD	13.0			 July 26, 2020			  FreeBSD 13.0


Want to link to this manual page? Use this URL:

home | help