1
.TH IOSTAT 1 "JUNE 2010" Linux "Linux User's Manual" -*- nroff -*-
3
iostat \- Report Central Processing Unit (CPU) statistics and input/output
4
statistics for devices and partitions.
6
.ie 'yes'@WITH_DEBUG@' \{
7
.B iostat [ -c ] [ -d ] [ --debuginfo ] [ -N ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ -z ] [
9
.B [...] | ALL ] [ -p [
18
.B iostat [ -c ] [ -d ] [ -N ] [ -k | -m ] [ -t ] [ -V ] [ -x ] [ -z ] [
20
.B [...] | ALL ] [ -p [
31
command is used for monitoring system input/output device
32
loading by observing the time the devices are active in relation
33
to their average transfer rates. The
35
command generates reports
36
that can be used to change system configuration to better balance
37
the input/output load between physical disks.
39
The first report generated by the
41
command provides statistics
42
concerning the time since the system was booted. Each subsequent report
43
covers the time since the previous report. All statistics are reported
44
each time the iostat command is run. The report consists of a
45
CPU header row followed by a row of
47
multiprocessor systems, CPU statistics are calculated system-wide
48
as averages among all processors. A device header row is displayed
49
followed by a line of statistics for each device that is configured.
53
parameter specifies the amount of time in seconds between
54
each report. The first report contains statistics for the time since
55
system startup (boot). Each subsequent report contains statistics
56
collected during the interval since the previous report. The
58
parameter can be specified in conjunction with the
62
parameter is specified, the value of
64
determines the number of reports generated at
68
parameter is specified without the
72
command generates reports continuously.
77
command generates three types of reports, the CPU
78
Utilization report, the Device Utilization report and
79
the Network Filesystem report.
80
.IP "CPU Utilization Report"
81
The first report generated by the
84
Utilization Report. For multiprocessor systems, the CPU values are
85
global averages among all processors.
86
The report has the following format:
91
Show the percentage of CPU utilization that occurred while
92
executing at the user level (application).
97
Show the percentage of CPU utilization that occurred while
98
executing at the user level with nice priority.
103
Show the percentage of CPU utilization that occurred while
104
executing at the system level (kernel).
109
Show the percentage of time that the CPU or CPUs were idle during which
110
the system had an outstanding disk I/O request.
115
Show the percentage of time spent in involuntary wait by the virtual CPU
116
or CPUs while the hypervisor was servicing another virtual processor.
121
Show the percentage of time that the CPU or CPUs were idle and the system
122
did not have an outstanding disk I/O request.
125
.IP "Device Utilization Report"
126
The second report generated by the
128
command is the Device Utilization
129
Report. The device report provides statistics on a per physical device
130
or partition basis. Block devices and partitions for which statistics are
131
to be displayed may be entered on the command line.
132
If no device nor partition
133
is entered, then statistics are displayed
134
for every device used by the system, and
135
providing that the kernel maintains statistics for it.
138
keyword is given on the command line, then statistics are
139
displayed for every device defined by the system, including those
140
that have never been used.
141
Transfer rates are shown in 1K blocks by default, unless the environment
142
variable POSIXLY_CORRECT is set, in which case 512-byte blocks are used.
143
The report may show the following fields,
144
depending on the flags used:
149
This column gives the device (or partition) name as listed in the /dev
155
Indicate the number of transfers per second that were issued
156
to the device. A transfer is an I/O request to the
157
device. Multiple logical requests can be combined into a single I/O
158
request to the device. A transfer is of indeterminate size.
161
.B Blk_read/s (kB_read/s, MB_read/s)
163
Indicate the amount of data read from the device expressed in a number of
164
blocks (kilobytes, megabytes) per second. Blocks are equivalent to sectors
165
and therefore have a size of 512 bytes.
168
.B Blk_wrtn/s (kB_wrtn/s, MB_wrtn/s)
170
Indicate the amount of data written to the device expressed in a number of
171
blocks (kilobytes, megabytes) per second.
174
.B Blk_read (kB_read, MB_read)
176
The total number of blocks (kilobytes, megabytes) read.
179
.B Blk_wrtn (kB_wrtn, MB_wrtn)
181
The total number of blocks (kilobytes, megabytes) written.
186
The number of read requests merged per second that were queued to the device.
191
The number of write requests merged per second that were queued to the device.
196
The number (after merges) of read requests completed per second for the device.
201
The number (after merges) of write requests completed per second for the device.
204
.B rsec/s (rkB/s, rMB/s)
206
The number of sectors (kilobytes, megabytes) read from the device per second.
209
.B wsec/s (wkB/s, wMB/s)
211
The number of sectors (kilobytes, megabytes) written to the device per second.
216
The average size (in sectors) of the requests that were issued to the device.
221
The average queue length of the requests that were issued to the device.
226
The average time (in milliseconds) for I/O requests issued to the device
227
to be served. This includes the time spent by the requests in queue and
228
the time spent servicing them.
233
The average time (in milliseconds) for read requests issued to the device
234
to be served. This includes the time spent by the requests in queue and
235
the time spent servicing them.
240
The average time (in milliseconds) for write requests issued to the device
241
to be served. This includes the time spent by the requests in queue and
242
the time spent servicing them.
247
The average service time (in milliseconds) for I/O requests that were issued
248
to the device. Warning! Do not trust this field any more.
249
This field will be removed in a future sysstat version.
254
Percentage of CPU time during which I/O requests were issued to the device
255
(bandwidth utilization for the device). Device saturation occurs when this
256
value is close to 100%.
261
Display the CPU utilization report.
263
Display the device utilization report.
264
.if 'yes'@WITH_DEBUG@' \{
266
Print debug output to stderr.
269
Display statistics in kilobytes per second.
271
Display statistics in megabytes per second.
273
Display the registered device mapper names for any device mapper devices.
274
Useful for viewing LVM2 statistics.
275
.IP "-p [ { device [,...] | ALL } ]"
276
The -p option displays statistics for
277
block devices and all their partitions that are used by the system.
278
If a device name is entered on the command line, then statistics for it
279
and all its partitions are displayed. Last, the
281
keyword indicates that statistics have to be displayed for all the block
282
devices and partitions defined by the system, including those that have
285
Print the time for each report displayed. The timestamp format may depend
286
on the value of the S_TIME_FORMAT environment variable (see below).
288
Print version number then exit.
290
Display extended statistics.
292
Tell iostat to omit output for any devices for which there was no activity
293
during the sample period.
298
command takes into account the following environment variables:
301
If this variable exists and its value is
303
then the current locale will be ignored when printing the date in the report
306
command will use the ISO 8601 format (YYYY-MM-DD) instead.
307
The timestamp displayed with option -t will also be compliant with ISO 8601
311
When this variable is set, transfer rates are shown in 512-byte blocks instead
312
of the default 1K blocks.
317
Display a single history since boot report for all CPU and Devices.
322
Display a continuous device report at two second intervals.
327
Display six reports at two second intervals for all devices.
330
.B iostat -x sda sdb 2 6
332
Display six reports of extended statistics at two second intervals for devices
338
Display six reports at two second intervals for device sda and all its
339
partitions (sda1, etc.)
342
filesystem must be mounted for
346
Kernels older than 2.6.x are no longer supported.
348
The average service time (svctm field) value is meaningless,
349
as I/O statistics are calculated at block level, and we don't know
350
when the disk driver starts to process a request. For this reason,
351
this field will be removed in a future sysstat version.
354
contains system statistics.
357
contains system uptime.
360
contains disks statistics.
363
contains statistics for block devices.
365
.I /proc/self/mountstats
366
contains statistics for network filesystems.
368
Sebastien Godard (sysstat <at> orange.fr)
377
.I http://pagesperso-orange.fr/sebastien.godard/