1IOPING(1)                        User Commands                       IOPING(1)
2
3
4

NAME

6       ioping - simple disk I/O latency monitoring tool
7

SYNOPSYS

9       ioping [-ABCDLRWGYykq] [-c count] [-i interval] [-l speed] [-t time]
10              [-T time] [-s size] [-S wsize] [-o offset] [-w deadline]
11              [-p period] [-P period] directory|file|device
12       ioping -h | -v
13

DESCRIPTION

15       This tool generates various I/O patterns and lets you monitor I/O speed
16       and latency in real time.
17

OPTIONS

19       -c count
20              Stop after count requests.
21
22       -i interval
23              Set time between requests to interval (1s).
24
25       -l speed
26              Set speed limit in bytes per second. Set interval to request-
27              size / speed.
28
29       -t time
30              Minimal valid request time (0us).  Too fast requests are ignored
31              in statistics.
32
33       -T time
34              Maximum valid request time.  Too slow requests are ignored in
35              statistics.
36
37       -s size
38              Request size (4k).
39
40       -S wsize
41              Working set size (1m for directory, whole size for file or
42              device).
43
44       -o offset
45              Starting offset in the file/device (0).
46
47       -w deadline
48              Stop after deadline time passed.
49
50       -p period
51              Print raw statistics for every period requests (see format
52              below).
53
54       -P period
55              Print raw statistics for every period in time.
56
57       -A     Use asynchronous I/O (io_setup(2), io_submit(2) etc syscalls).
58
59       -B     Batch mode. Be quiet and print final statistics in raw format.
60
61       -C     Use cached I/O. Suppress cache invalidation via
62              posix_fadvise(2)) before read and fdatasync(2) after each write.
63
64       -D     Use direct I/O (see O_DIRECT in open(2)).
65
66       -L     Use sequential operations rather than random. This also sets
67              default request size to 256k (as in -s 256k).
68
69       -R     Disk seek rate test. This option suppress human-readable output
70              for each request (as -q), sets default interval to zero (-i 0),
71              stops measurement after 3 seconds (-w 3) and increases default
72              working set size to 64m (-S 64m). Working set (-S) should be
73              increased accordingly if disk has huge cache.
74
75       -W     Use writes rather than reads. Safe for directory target. Write
76              I/O gives more reliable results for systems where non-cached
77              reads are not supported or cached at some level. Might be
78              *DANGEROUS* for file/device: it will shred your data. In this
79              case should be repeated three times (-WWW).
80
81       -G     Alternate read and write requests.
82
83       -Y     Use sync I/O (see O_SYNC in open(2)).
84
85       -y     Use data sync I/O (see O_DSYNC in open(2)).
86
87       -k     Keep and reuse temporary working file "ioping.tmp" (only for
88              directory target).
89
90       -q     Suppress periodical human-readable output.
91
92       -h     Display help message and exit.
93
94       -v     Display version and exit.
95
96   Argument suffixes
97       For options that expect time argument (-i, -P and -w), default is
98       seconds, unless you specify one of the following suffixes (case-
99       insensitive):
100
101       ns, nsec
102              nanoseconds (a billionth of a second, 1 / 1 000 000 000)
103
104       us, usec
105              microseconds (a millionth of a second, 1 / 1 000 000)
106
107       ms, msec
108              milliseconds (a thousandth of a second, 1 / 1 000)
109
110       s, sec seconds
111
112       m, min minutes
113
114       h, hour
115              hours
116
117       For options that expect "size" argument (-s, -S and -o), default is
118       bytes, unless you specify one of the following suffixes (case-
119       insensitive):
120
121       sector disk sectors (a sector is always 512).
122
123       KiB, k, kb
124              kilobytes (1 024 bytes)
125
126       page   memory pages (a page is always 4KiB).
127
128       MiB, m, mb
129              megabytes (1 048 576 bytes)
130
131       GiB, g, gb
132              gigabytes (1 073 741 824 bytes)
133
134       TiB, t, tb
135              terabytes (1 099 511 627 776 bytes)
136
137       For options that expect "number" argument (-p and -c) you can
138       optionally specify one of the following suffixes (case-insensitive):
139
140       k      kilo (thousands, 1 000)
141
142       m      mega (millions, 1 000 000)
143
144       g      giga (billions, 1 000 000 000)
145
146       t      tera (trillions, 1 000 000 000 000)
147

EXIT STATUS

149       Returns 0 upon success. The following error codes are defined:
150
151       1      Invalid usage (error in arguments).
152
153       2      Error during preparation stage.
154
155       3      Error during runtime.
156

RAW STATISTICS

158       ioping -p 100 -c 200 -i 0 -q .
159       99 10970974 9024 36961531 90437 110818 358872 30756 100 12516420
160       100 9573265 10446 42785821 86849 95733 154609 10548 100 10649035
161       (1) (2)     (3)   (4)      (5)   (6)   (7)    (8)   (9) (10)
162
163       (1) count of requests in statistics
164       (2) running time         (nanoseconds)
165       (3) requests per second  (iops)
166       (4) transfer speed       (bytes per second)
167       (5) minimal request time (nanoseconds)
168       (6) average request time (nanoseconds)
169       (7) maximum request time (nanoseconds)
170       (8) request time standard deviation (nanoseconds)
171       (9) total requests       (including warmup, too slow or too fast)
172       (10) total running time  (nanoseconds)
173

EXAMPLES

175       ioping .
176              Show disk I/O latency using the default values and the current
177              directory, until interrupted. This command prepares temporary
178              (unlinked/hidden) working file and reads random chunks from it
179              using non-cached read requests.
180
181       ioping -c 10 -s 1M /tmp
182              Measure latency on /tmp using 10 requests of 1 megabyte each.
183
184       ioping -R /dev/sda
185              Measure disk seek rate.
186
187       ioping -RL /dev/sda
188              Measure disk sequential speed.
189
190       ioping -RLB . | awk '{print $4}'
191              Get disk sequential speed in bytes per second.
192

SEE ALSO

194       iostat(1), dd(1), fio(1), stress(1), stress-ng(1), dbench(1),
195       sysbench(1), fsstress, xfstests, hdparm(8), badblocks(8),
196

HOMEPAGE

198https://github.com/koct9i/ioping/⟩.
199

AUTHORS

201       This program was written by Konstantin Khlebnikov ⟨koct9i@gmail.com⟩.
202       Man-page was written by Kir Kolyshkin ⟨kir@openvz.org⟩.
203
204
205
206                                   Oct 2014                          IOPING(1)
Impressum