fio: provide an option for a startdelay range

This patch allows the specification of start delay as range.  With a
range each thread will chose an individual startdelay out of the range.

That solves an issue of startdelay being the same for each numjob clone
and that way spreads all kind of activities e.g. that all clones with
mixed r/w jobs switch r/w at the same time.  Also all kind of other
"thundering herd" issues can be softened by some time spread due to this
option.

Signed-off-by: Christian Ehrhardt <ehrhardt@linux.vnet.ibm.com>
Signed-off-by: Jens Axboe <axboe@fb.com>
diff --git a/thread_options.h b/thread_options.h
index 65eba7e..b7a88ed 100644
--- a/thread_options.h
+++ b/thread_options.h
@@ -130,6 +130,7 @@
 	unsigned int fdatasync_blocks;
 	unsigned int barrier_blocks;
 	unsigned long long start_delay;
+	unsigned long long start_delay_high;
 	unsigned long long timeout;
 	unsigned long long ramp_time;
 	unsigned int overwrite;
@@ -352,6 +353,7 @@
 	uint32_t fdatasync_blocks;
 	uint32_t barrier_blocks;
 	uint64_t start_delay;
+	uint64_t start_delay_high;
 	uint64_t timeout;
 	uint64_t ramp_time;
 	uint32_t overwrite;