1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
|
'\" te
.\"
.\" This file and its contents are supplied under the terms of the
.\" Common Development and Distribution License ("CDDL"), version 1.0.
.\" You may only use this file in accordance with the terms of version
.\" 1.0 of the CDDL.
.\"
.\" A full copy of the text of the CDDL should have accompanied this
.\" source. A copy of the CDDL is also available via the Internet at
.\" http://www.illumos.org/license/CDDL.
.\"
.\" Copyright 2014 Joyent, Inc. All rights reserved.
.\"
.TH "VFSSTAT" "1m" "May 1, 2014" "" ""
.
.SH "NAME"
\fBvfsstat\fR \-\- Report VFS read and write activity
.
.SH "SYNOPSIS"
.
.nf
vfsstat [\-hIMrzZ] [interval [count]]
.
.fi
.
.SH "DESCRIPTION"
The vfsstat utility reports a summary of VFS read and write
activity per zone\. It first prints all activity since boot, then
reports activity over a specified interval\.
.
.P
When run from a non\-global zone (NGZ), only activity from that NGZ
can be observed\. When run from a the global zone (GZ), activity
from the GZ and all other NGZs can be observed\.
.
.P
This tool is convenient for examining I/O performance as
experienced by a particular zone or application\. Other tools
which examine solely disk I/O do not report reads and writes which
may use the filesystem\'s cache\. Since all read and write system
calls pass through the VFS layer, even those which are satisfied
by the filesystem cache, this tool is a useful starting point when
looking at a potential I/O performance problem\. The vfsstat
command reports the most accurate reading of I/O performance as
experienced by an application or zone\.
.
.P
One additional feature is that ZFS zvol performance is also reported
by this tool, even though zvol I/O does not go through the VFS
layer\. This is done so that this single tool can be used to monitor
I/O performance and because its not unreasonable to think of zvols
as being included along with other ZFS filesystems\.
.
.P
The calculations and output fields emulate those from iostat(1m)
as closely as possible\. When only one zone is actively performing
disk I/O, the results from iostat(1m) in the global zone and
vfsstat in the local zone should be almost identical\. Note that
many VFS read operations may be handled by the filesystem cache,
so vfsstat and iostat(1m) will be similar only when most
operations require a disk access\.
.
.P
As with iostat(1m), a result of 100% for VFS read and write
utilization does not mean that the VFS layer is fully saturated\.
Instead, that measurement just shows that at least one operation
was pending over the last interval of time examined\. Since the
VFS layer can process more than one operation concurrently, this
measurement will frequently be 100% but the VFS layer can still
accept additional requests\.
.
.SH "OUTPUT"
The vfsstat utility reports the following information:
.
.IP "" 4
.
.nf
r/s
.RS
reads per second
.RE
w/s
.RS
writes per second
.RE
kr/s
.RS
kilobytes read per second
.RE
kw/s
.RS
kilobytes written per second
.RE
ractv
.RS
average number of read operations actively being serviced by the VFS layer
.RE
wactv
.RS
average number of write operations actively being serviced by the VFS layer
.RE
read_t
.RS
average VFS read latency, in microseconds
.RE
writ_t
.RS
average VFS write latency, in microseconds
.RE
%r
.RS
percent of time there is a VFS read operation pending
.RE
%w
.RS
percent of time there is a VFS write operation pending
.RE
d/s
.RS
VFS operations per second delayed by the ZFS I/O throttle
.RE
del_t
.RS
average ZFS I/O throttle delay, in microseconds
.RE
.
.fi
.
.IP "" 0
.
.SH "OPTIONS"
The following options are supported:
.
.P
\-h
.RS
Show help message and exit
.RE
.
.P
\-I
.RS
Print results per interval, rather than per second (where applicable)
.RE
.
.P
\-M
.RS
Print results in MB/s instead of KB/s
.RE
.
.P
\-r
.RS
Show results in a comma\-separated format
.RE
.
.P
\-z
.RS
Hide zones with no VFS activity
.RE
.
.P
\-Z
.RS
Print results for all zones, not just the current zone
.RE
.
.SH "OPERANDS"
interval
.
.P
Specifies the length in seconds to pause between each interval
report\. If not specified, vfsstat will print a summary since boot
and exit\.
.
.P
count
.
.P
Specifies the number of intervals to report\. Defaults to
unlimited if not specified\.
.
.SH "SEE ALSO"
.
.nf
iostat(1m), ziostat(1m), mpstat(1m)
.
.fi
.
.SH "NOTES"
This command does not examine readdir or any other VFS operations,
only read and write operations\.
.
.P
This command does not look at network I/O, only I/O operations to
or from a file\.
.
.P
The output format from vfsstat may change over time; use the
comma\-separated output for a stable output format\.
|