Parsing numbers and arithmetic expressions in fio

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jens,

I'm trying to write an fio control file which will have several
threads, each writing to disjoint portions of a device. The size of
the portion of the device that the thread controls is determined by an
environment variable, for example "export SIZE=1g". The control file
looks something like this:

[global]
size=${SIZE}
filename=/dev/my-device

[job1]
offset=0

[job2]
offset=${SIZE}

[job3]
offset=2*${SIZE}

Unfortunately, this doesn't work with the current version of fio. It
appears that arithmetic expressions are only evaluated when a keyword
($pagesize, $mb_memory or $ncpus) is included. Further, the
expressions are evaluated by bc, which wouldn't understand "1g", so it
wouldn't work to just add a call to bc_calc in str_to_decimal.

What's the recommended way to do this? Alternatively, what do you
think would be the minimal thing to add to fio to achieve this effect?
One option is to add a new set of fio options to set up this
particular scenario--offsets that increment by an offset.
Alternatively, a mechanism to make new keywords globally would work,
if I could just make the size a keyword (or maybe all options could
implicitly be keywords?). What do you think?

Thanks,
Dan
--
To unsubscribe from this list: send the line "unsubscribe fio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux