]> git.cameronkatri.com Git - apple_cmds.git/blob - system_cmds/iosim.tproj/iosim.1
shell_cmds: Fix BINDIRs
[apple_cmds.git] / system_cmds / iosim.tproj / iosim.1
1 .\" Copyright (c) 2013, Apple Inc. All rights reserved.
2 .\"
3 .Dd Oct 9, 2013
4 .Dt IOSIM 1
5 .Sh NAME
6 .Nm iosim
7 .Nd A performance tool to simulate I/O workloads.
8 .Sh SYNOPSIS
9 .Pp
10 .Nm iosim
11 .Ar -c <number>
12 Burst Count. No. of I/Os performed in an I/O burst.
13 Default Value: 10
14 Valid Range: [0, INT_MAX]
15 .Pp
16 .Nm iosim
17 .Ar -i <msecs>
18 Inter Burst Duration. Amount of time each thread sleeps between bursts (-1 indicates random durations between 0-100 msecs)
19 Default Value: 0
20 Valid Range: [-1, INT_MAX]
21 .Pp
22 .Nm iosim
23 .Ar -d <msecs>
24 Inter I/O delay. Amount of time thread sleeps between issuing I/Os
25 Default Value: 0
26 Valid Range: [0, INT_MAX]
27 .Pp
28 .Nm iosim
29 .Ar -t <number>
30 Thread count
31 Default Value: 1
32 Valid Range: [0, 1000]
33 .Pp
34 .Nm iosim
35 .Ar -f <number>
36 Workload Type (0/1/2 : Read-Only/Write-Only/Mixed RW)
37 Default Value: 0
38 Valid Range: [0, 2]
39 .Pp
40 .Nm iosim
41 .Ar -m <number>
42 I/O Pattern (0/1 : Sequential/Random)
43 Default Value: 0
44 Valid Range: [0, 1]
45 .Pp
46 .Nm iosim
47 .Ar -j <bytes>
48 Size of I/O in bytes
49 Default Value: 4096
50 Valid Range: [0, INT_MAX]
51 .Pp
52 .Nm iosim
53 .Ar -s <msecs>
54 Frequency of sync() calls
55 Default Value: 5000
56 Valid Range: [0, INT_MAX]
57 .Pp
58 .Nm iosim
59 .Ar -l <number>
60 I/O Tier (0/1/2/3)
61 Default Value: 0
62 Valid Range: [0, 3]
63 .Pp
64 .Nm iosim
65 .Ar -z <number>
66 Size of the file created specified in pages (Only used when the file is being created by the tool)
67 Default Value: 1 GB
68 Valid Range: [0, INT_MAX]
69 .Pp
70 .Nm iosim
71 .Ar -x <secs>
72 Test duration (0 indicates that the tool would wait for a Ctrl-C)
73 Default Value: 0
74 Valid Range: [0, INT_MAX]
75 .Pp
76 .Nm iosim
77 .Ar -a number
78 I/O Caching behavior (0/1 : Non-cached/Cached)
79 Default Value: 0
80 Valid Range: [0, 1]
81 .Pp
82 .Nm iosim
83 .Ar -n <filename>
84 Filename for I/Os (If this option is not specified, the tool would create files on its own)
85 Valid Range: Valid filename
86 .Sh DESCRIPTION
87 The
88 .Nm iosim
89 tool allows simulating workloads for I/O performance evaluation. The tool spawns 'n' threads which issue non-cached I/Os. If specified, it also creates a sync thread which issues system wide sync() calls to flush data and metadata to disk (emulates launchd behavior). The I/Os are issued at the specified I/O tier and the tool reports latency and throughput numbers.
90 .P
91 .nf
92 Following is an explanation of the results:
93 Avg. Latency : Avg. latency experienced by the I/Os.
94 Low Latency Histogram: Frequency distribution of I/O latency for low latency I/Os.
95 Latency Histogram: Frequency distribution of I/O latency.
96 Burst Avg. Latency Histogram: Frequency distribution of burst avg. latency.
97 Throughput timeline: Time windowed throughput distrbution.
98 .fi
99 .Sh SEE ALSO
100 .Xr fs_usage 1