return 0;
}
+static int str_gtod_reduce_cb(void *data, int *il)
+{
+ struct thread_data *td = data;
+ int val = *il;
+
+ td->o.disable_clat = !!val;
+ td->o.disable_slat = !!val;
+ td->o.disable_bw = !!val;
+ if (val)
+ td->tv_cache_mask = 63;
+
+ return 0;
+}
+
#define __stringify_1(x) #x
#define __stringify(x) __stringify_1(x)
.off1 = td_var_offset(time_based),
.help = "Keep running until runtime/timeout is met",
},
+ {
+ .name = "ramp_time",
+ .type = FIO_OPT_STR_VAL_TIME,
+ .off1 = td_var_offset(ramp_time),
+ .help = "Ramp up time before measuring performance",
+ },
{
.name = "mem",
.alias = "iomem",
.oval = VERIFY_CRC32,
.help = "Use crc32 checksums for verification",
},
+ { .ival = "crc32c-intel",
+ .oval = VERIFY_CRC32C_INTEL,
+ .help = "Use hw crc32c checksums for verification",
+ },
{ .ival = "crc32c",
.oval = VERIFY_CRC32C,
.help = "Use crc32c checksums for verification",
.def = "1",
},
#endif
+ {
+ .name = "gtod_reduce",
+ .type = FIO_OPT_BOOL,
+ .help = "Greatly reduce number of gettimeofday() calls",
+ .cb = str_gtod_reduce_cb,
+ .def = "0",
+ },
+ {
+ .name = "disable_clat",
+ .type = FIO_OPT_BOOL,
+ .off1 = td_var_offset(disable_clat),
+ .help = "Disable completion latency numbers",
+ .parent = "gtod_reduce",
+ .def = "0",
+ },
+ {
+ .name = "disable_slat",
+ .type = FIO_OPT_BOOL,
+ .off1 = td_var_offset(disable_slat),
+ .help = "Disable submissionn latency numbers",
+ .parent = "gtod_reduce",
+ .def = "0",
+ },
+ {
+ .name = "disable_bw_measurement",
+ .type = FIO_OPT_BOOL,
+ .off1 = td_var_offset(disable_bw),
+ .help = "Disable bandwidth logging",
+ .parent = "gtod_reduce",
+ .def = "0",
+ },
{
.name = NULL,
},