.BI \-\-output \fR=\fPfilename
Write output to \fIfilename\fR.
.TP
-.BI \-\-timeout \fR=\fPtimeout
-Limit run time to \fItimeout\fR seconds.
+.BI \-\-runtime \fR=\fPruntime
+Limit run time to \fIruntime\fR seconds.
.TP
.B \-\-latency\-log
Generate per-job latency logs.
.B external
Loads an external I/O engine object file. Append the engine filename as
`:\fIenginepath\fR'.
+.TP
+.B falloc
+ IO engine that does regular linux native fallocate callt to simulate data
+transfer as fio ioengine
+.br
+ DDIR_READ does fallocate(,mode = FALLOC_FL_KEEP_SIZE,)
+.br
+ DIR_WRITE does fallocate(,mode = 0)
+.br
+ DDIR_TRIM does fallocate(,mode = FALLOC_FL_KEEP_SIZE|FALLOC_FL_PUNCH_HOLE)
+.TP
+.B e4defrag
+IO engine that does regular EXT4_IOC_MOVE_EXT ioctls to simulate defragment activity
+request to DDIR_WRITE event
+.TP
.RE
.RE
.TP
For TCP network connections, tell fio to listen for incoming
connections rather than initiating an outgoing connection. The
hostname must be omitted if this option is used.
+.TP
+.BI (e4defrag,donorname) \fR=\fPstr
+File will be used as a block donor (swap extents between files)
+.TP
+.BI (e4defrag,inplace) \fR=\fPint
+Configure donor file block allocation strategy
+.RS
+.BI 0(default) :
+Preallocate donor's file on init
+.TP
+.BI 1:
+allocate space immidietly inside defragment event, and free right after event
+.RE
+.TP
.SH OUTPUT
While running, \fBfio\fR will display the status of the created jobs. For
example:
on that machine, where args defines what fio listens to. The arguments
are of the form 'type:hostname or IP:port'. 'type' is either 'ip' (or ip4)
-for TCP/IP v4, 'ip6' for TCP/IP v6, or 'sock' for a local unix domain socket.
-'hostname' is either a hostname or IP address, and 'port' is the port to
+for TCP/IP v4, 'ip6' for TCP/IP v6, or 'sock' for a local unix domain
+socket. 'hostname' is either a hostname or IP address, and 'port' is the port to
listen to (only valid for TCP/IP, not a local socket). Some examples:
-1) fio --server
+1) fio \-\-server
Start a fio server, listening on all interfaces on the default port (8765).
-2) fio --server=ip:hostname,4444
+2) fio \-\-server=ip:hostname,4444
Start a fio server, listening on IP belonging to hostname and on port 4444.
-3) fio --server=ip6:::1,4444
+3) fio \-\-server=ip6:::1,4444
Start a fio server, listening on IPv6 localhost ::1 and on port 4444.
-4) fio --server=,4444
+4) fio \-\-server=,4444
Start a fio server, listening on all interfaces on port 4444.
-5) fio --server=1.2.3.4
+5) fio \-\-server=1.2.3.4
Start a fio server, listening on IP 1.2.3.4 on the default port.
-6) fio --server=sock:/tmp/fio.sock
+6) fio \-\-server=sock:/tmp/fio.sock
Start a fio server, listening on the local socket /tmp/fio.sock.
When a server is running, you can connect to it from a client. The client
is run with:
-fio --local-args --client=server --remote-args <job file(s)>
+fio \-\-local-args \-\-client=server \-\-remote-args <job file(s)>
-where --local-args are arguments that are local to the client where it is
-running, 'server' is the connect string, and --remote-args and <job file(s)>
+where \-\-local-args are arguments that are local to the client where it is
+running, 'server' is the connect string, and \-\-remote-args and <job file(s)>
are sent to the server. The 'server' string follows the same format as it
does on the server side, to allow IP/hostname/socket and port strings.
You can connect to multiple clients as well, to do that you could run:
-fio --client=server2 --client=server2 <job file(s)>
+fio \-\-client=server2 \-\-client=server2 <job file(s)>
.SH AUTHORS
.B fio