.name = "Clock settings",
.mask = FIO_OPT_G_CLOCK,
},
+ {
+ .name = "I/O Type",
+ .mask = FIO_OPT_G_IO_TYPE,
+ },
+ {
+ .name = "I/O Thinktime",
+ .mask = FIO_OPT_G_THINKTIME,
+ },
+ {
+ .name = "Randomizations",
+ .mask = FIO_OPT_G_RANDOM,
+ },
+ {
+ .name = "I/O buffers",
+ .mask = FIO_OPT_G_IO_BUF,
+ },
{
.name = NULL,
}
.parent = "rw",
.hide = 1,
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_RANDOM,
},
{
.name = "use_os_rand",
.parent = "rw",
.hide = 1,
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_RANDOM,
},
{
.name = "norandommap",
.parent = "rw",
.hide = 1,
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_RANDOM,
},
{
.name = "softrandommap",
.hide = 1,
.def = "0",
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_RANDOM,
},
{
.name = "nrfiles",
.def = "0",
.inverse = "buffered",
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_IO_TYPE,
},
{
.name = "buffered",
.def = "1",
.inverse = "direct",
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_IO_TYPE,
},
{
.name = "overwrite",
.cb = str_verify_cb,
.def = "0",
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_VERIFY,
.posval = {
{ .ival = "0",
.oval = VERIFY_NONE,
.help = "Idle time between IO buffers (usec)",
.def = "0",
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_THINKTIME,
},
{
.name = "thinktime_spin",
.parent = "thinktime",
.hide = 1,
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_THINKTIME,
},
{
.name = "thinktime_blocks",
.parent = "thinktime",
.hide = 1,
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_THINKTIME,
},
{
.name = "rate",
.help = "Invalidate buffer/page cache prior to running job",
.def = "1",
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_IO_TYPE,
},
{
.name = "sync",
.parent = "buffered",
.hide = 1,
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_IO_TYPE,
},
{
.name = "bwavgtime",
.category = FIO_OPT_C_LOG,
.group = FIO_OPT_G_INVALID,
},
- {
- .name = "hugepage-size",
- .lname = "Hugepage size",
- .type = FIO_OPT_INT,
- .off1 = td_var_offset(hugepage_size),
- .help = "When using hugepages, specify size of each page",
- .def = __fio_stringify(FIO_HUGE_PAGE),
- .interval = 1024 * 1024,
- .category = FIO_OPT_C_GENERAL,
- .group = FIO_OPT_G_INVALID,
- },
{
.name = "group_reporting",
.lname = "Group reporting",
.off1 = td_var_offset(zero_buffers),
.help = "Init IO buffers to all zeroes",
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_IO_BUF,
},
{
.name = "refill_buffers",
.off1 = td_var_offset(refill_buffers),
.help = "Refill IO buffers on every IO submit",
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_IO_BUF,
},
{
.name = "scramble_buffers",
.help = "Slightly scramble buffers on every IO submit",
.def = "1",
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_IO_BUF,
},
{
.name = "buffer_compress_percentage",
.help = "How compressible the buffer is (approximately)",
.interval = 5,
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_IO_BUF,
},
{
.name = "buffer_compress_chunk",
.help = "Size of compressible region in buffer",
.interval = 256,
.category = FIO_OPT_C_IO,
- .group = FIO_OPT_G_INVALID,
+ .group = FIO_OPT_G_IO_BUF,
},
{
.name = "clat_percentiles",
.category = FIO_OPT_C_GENERAL,
.group = FIO_OPT_G_INVALID,
},
+ {
+ .name = "hugepage-size",
+ .lname = "Hugepage size",
+ .type = FIO_OPT_INT,
+ .off1 = td_var_offset(hugepage_size),
+ .help = "When using hugepages, specify size of each page",
+ .def = __fio_stringify(FIO_HUGE_PAGE),
+ .interval = 1024 * 1024,
+ .category = FIO_OPT_C_GENERAL,
+ .group = FIO_OPT_G_INVALID,
+ },
{
.name = "flow_id",
.lname = "I/O flow ID",