The <jobs> format is as follows:
directory=x Use 'x' as the top level directory for storing files
- rw=0/1 0 is read, 1 is write
+ rw=x 'x' may be: read, randread, write, or randwrite
overwrite=x If 'x', layout a write file first.
prio=x Run io at prio X, 0-7 is the kernel allowed range
prioclass=x Run io at prio class X
bsrange=x-y Mix thread block sizes randomly between x and y
direct=x 1 for direct IO, 0 for buffered IO
thinktime=x "Think" x usec after each io
- random IO is randomized
- sequential IO is sequential
rate=x Throttle rate to x KiB/sec
ratemin=x Quit if rate of x KiB/sec can't be met
ratecycle=x ratemin averaged over x msecs
continue;
if (strstr(p, "["))
break;
- if (!check_int(p, "rw", &td->ddir)) {
- fgetpos(f, &off);
- continue;
- }
if (!check_int(p, "prio", &prio)) {
fgetpos(f, &off);
continue;
fgetpos(f, &off);
continue;
}
- if (!check_strset(p, "sequential")) {
+ if (!check_str(p, "rw", "randread")) {
+ td->ddir = DDIR_READ;
+ td->sequential = 0;
+ fgetpos(f, &off);
+ continue;
+ }
+ if (!check_str(p, "rw", "read")) {
+ td->ddir = DDIR_READ;
td->sequential = 1;
fgetpos(f, &off);
continue;
}
- if (!check_strset(p, "random")) {
+ if (!check_str(p, "rw", "randwrite")) {
+ td->ddir = DDIR_WRITE;
td->sequential = 0;
fgetpos(f, &off);
continue;
}
+ if (!check_str(p, "rw", "write")) {
+ td->ddir = DDIR_WRITE;
+ td->sequential = 1;
+ fgetpos(f, &off);
+ continue;
+ }
if (!check_strset(p, "aio")) {
td->use_aio = 1;
fgetpos(f, &off);