X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=HOWTO;h=cdb7b013591b00078a05f0ba04b34ca8a0c4d182;hb=42da5c8b2cdd53427145b623293bc5b915fb5f05;hp=aaa46f801bd22d5ba113dc8726bafaf41d13858c;hpb=73568e1b094b86adbe2e5e19fc9b8122f0d11711;p=fio.git diff --git a/HOWTO b/HOWTO index aaa46f80..cdb7b013 100644 --- a/HOWTO +++ b/HOWTO @@ -253,7 +253,20 @@ machine. This section describes in details each parameter associated with a job. Some parameters take an option of a given type, such as an integer or -a string. The following types are used: +a string. Anywhere a numeric value is required, an arithmetic expression +may be used, provided it is surrounded by parentheses. Supported operators +are: + + addition (+) + subtraction (-) + multiplication (*) + division (/) + modulus (%) + exponentiation (^) + +For time values in expressions, units are microseconds by default. This is +different than for time values not in expressions (not enclosed in +parentheses). The following types are used: str String. This is a sequence of alpha characters. time Integer with possible time suffix. In seconds unless otherwise @@ -379,7 +392,7 @@ rw=str Type of io pattern. Accepted values are: For certain types of io the result may still be skewed a bit, since the speed may be different. It is possible to specify a number of IO's to do before getting a new offset, this is - one by appending a ':' to the end of the string given. + done by appending a ':' to the end of the string given. For a random read, it would look like 'rw=randread:8' for passing in an offset modifier with a value of 8. If the suffix is used with a sequential IO pattern, then the value @@ -426,12 +439,6 @@ randseed=int Seed the random number generators based on this seed value, to If not set, the random sequence depends on the randrepeat setting. -use_os_rand=bool Fio can either use the random generator supplied by the OS - to generator random offsets, or it can use it's own internal - generator (based on Tausworthe). Default is to use the - internal generator, which is often of better quality and - faster. - fallocate=str Whether pre-allocation is performed when laying down files. Accepted values are: @@ -554,7 +561,7 @@ bssplit=str Sometimes you want even finer grained control of the while having 90% 4k writes and 10% 8k writes, you would specify: - bssplit=2k/50:4k/50,4k/90,8k/10 + bssplit=2k/50:4k/50,4k/90:8k/10 blocksize_unaligned bs_unaligned If this option is given, any byte size value within bsrange @@ -823,7 +830,9 @@ number_ios=int Fio will normally perform IOs until it has exhausted the size time (or hits an error condition). With this setting, the range/size can be set independently of the number of IOs to perform. When fio reaches this number, it will exit normally - and report status. + and report status. Note that this does not extend the amount + of IO that will be done, it will only stop fio if this + condition is met before other end-of-job criteria. fsync=int If writing to a file, issue a sync of the dirty data for every number of blocks given. For example, if you give @@ -1307,6 +1316,21 @@ verify_backlog_batch=int Control how many blocks fio will verify if verify_backlog_batch is larger than verify_backlog, some blocks will be verified more than once. +verify_state_save=bool When a job exits during the write phase of a verify + workload, save its current state. This allows fio to replay + up until that point, if the verify state is loaded for the + verify read phase. The format of the filename is, roughly, + ---verify.state. is "local" + for a local run, "sock" for a client/server socket connection, + and "ip" (192.168.0.1, for instance) for a networked + client/server connection. + +verify_state_load=bool If a verify termination trigger was used, fio stores + the current write state of each thread. This can be used at + verification time so that fio knows how far it should verify. + Without this information, fio will run a full verification + pass, according to the settings in the job file used. + stonewall wait_for_previous Wait for preceding jobs in the job file to exit, before starting this one. Can be used to insert serialization @@ -1625,7 +1649,9 @@ that defines them is selected. address. [netsplice] port=int -[net] port=int The TCP or UDP port to bind to or connect to. +[net] port=int The TCP or UDP port to bind to or connect to. If this is used +with numjobs to spawn multiple instances of the same job type, then this will +be the starting port number since fio will use a range of ports. [netsplice] interface=str [net] interface=str The IP address of the network interface used to send or @@ -1657,6 +1683,7 @@ that defines them is selected. [net] listen 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. + [net] pingpong Normaly a network writer will just continue writing data, and a network reader will just consume packages. If pingpong=1 is set, a writer will send its normal payload to the reader, @@ -1669,6 +1696,10 @@ that defines them is selected. single reader when multiple readers are listening to the same address. +[net] window_size Set the desired socket buffer size for the connection. + +[net] mss Set the TCP maximum segment size (TCP_MAXSEG). + [e4defrag] donorname=str File will be used as a block donor(swap extents between files) [e4defrag] inplace=int