Re: [PATCH] Allow to reset offset_increment counter

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

 



Hi Jens,
On 05/23/2014 06:59 PM, Jens Axboe wrote:
> On 2014-05-23 06:48, Jiri Horky wrote:
>> Hi all,
>>
>> because I got bitten by this multiple times I decided to give this patch
>> a try :)
>>
>> Current implementation of offset calculation when offset_increment is in
>> effect uses global thread_number as follows:
>>      f->file_offset = td->o.start_offset + (td->thread_number - 1) *
>> td->o.offset_increment;
>>
>> The thread number gets incremented for every job (subjob) so even you
>> have multiple jobs with different filenames, the offset calculation is
>> shared. I find this very unintuitive, especially in cases the offsets
>> gets past the device/file. For example, if one wants to run sequential
>> read test in 16 threads of multiple devices (/dev/sd{b,c,d}) in one
>> group, which are of  1TB size, and to eliminate caching effect he wants
>> each read to start at different offset, the config could look like
>> following:
>
> Maybe it would be better to have this offset calculation be on a
> per-thread-per-file basis? You are right in that it only makes sense
> within the same file or device, so maybe it'd be better to make it
> work more like you expect.
I agree it should definitely be file-based, I just wasn't sure how you
would express that in the config file. Or you mean that that the offset
calculation would not be shared between different jobs (not subjobs)
even if they share the same file?
The fact is that one can always calculate the start offset in the new
job definition if he needs the offset calculation to be shared. And if
there are multiple files within a job, the offset_increment should be
independent.

I will try to look at this.

Jiri

--
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