Re: FIO size parameter feedback

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

 



Sure Sitsofe
fio --name=global --time_based --size=100% --direct=1 --norandommap
--randrepeat=0 --buffered=0 --refill_buffers --name=job
--ioengine=libaio --group_reporting --filename=/dev/nvme0n1
--numjobs=1 --iodepth=128 --bs=128k --rw=rw --rwmixread=70
--runtime=10800 --write_iops_log=wr.log -write_lat_log=wr.clat.log
--log_avg_msec=1000

On Tue, Mar 6, 2018 at 1:23 PM, Sitsofe Wheeler <sitsofe@xxxxxxxxx> wrote:
> An example of an engine that can't deduce a size by itself is the null
> engine. Most file based engines (e.g. pvsync, sync, libaio) are able
> to.
>
> I'd really have to see the exact jobs that were run (i.e. the complete
> command line and fio job file if there was one) and the exact output
> that you mention showed the problem to say more. For example you say
> 2TBytes but that's probably not granular enough. What is more
> interesting is the size of the disk in bytes (from Linux's
> perspective) because I'd need to know exactly what rounding occured to
> understand what happened.
>
> On 6 March 2018 at 20:28, abhishek koundal <akoundal@xxxxxxxxx> wrote:
>> Sitsofe
>> The engine used is the libaio. I hope this helps.
>> Can you elaborate on the ioengine part which are able to query the
>> file/disk size and which wont be able to ? (I generally use libaio for
>> QD>1)
>>
>> On Tue, Mar 6, 2018 at 11:47 AM, abhishek koundal <akoundal@xxxxxxxxx> wrote:
>>> Hi,
>>> The workload I used was SEQ_MX 70/30 BS 128 QD 128
>>> FIO used 3.1
>>> Drive SKU = 2TB
>>>
>>> On Tue, Mar 6, 2018 at 11:43 AM, abhishek koundal <akoundal@xxxxxxxxx> wrote:
>>>> Hi,
>>>> The workload I used was SEQ_MX 70/30 BS 128 QD 128
>>>> FIO used 3.1
>>>>
>>>> On Tue, Mar 6, 2018 at 11:11 AM, Sitsofe Wheeler <sitsofe@xxxxxxxxx> wrote:
>>>>>
>>>>> On 6 March 2018 at 19:02, Sitsofe Wheeler <sitsofe@xxxxxxxxx> wrote:
>>>>> > Hi,
>>>>> >
>>>>> > On 6 March 2018 at 18:52, abhishek koundal <akoundal@xxxxxxxxx> wrote:
>>>>> >> All
>>>>> >> If the size parameter is not given for the runs, how does the tool
>>>>> >> decide what % (LBA span) needs to be written on the drive?
>>>>> >
>>>>> > It will query the disk/file for its size (but this depends on the
>>>>> > ioengine being able to do that and not all do/can).
>>>>> >
>>>>> >> Reason I am asking as I see different data for the same workloads when
>>>>> >> size=100% and no size parameter used.
>>>>> >
>>>>> > Hmm this sounds like it might be due to a rounding issue - what size
>>>>> > is your disk and what job were you running?
>>>>>
>>>>> https://github.com/axboe/fio/blob/master/filesetup.c#L1039-L1048 shows
>>>>> that when in setup_files() using a size set in percent will round the
>>>>> io_size down to the minimum block size whereas not setting size at all
>>>>> looks like it will pass the determined size straight through
>>>>> unrounded. I'm not sure what job you would see the difference on -
>>>>> perhaps one that did backwards I/O?
>
> --
> Sitsofe | http://sucs.org/~sits/



-- 
Life is too short for silly things so invest your time in some
productive outputs!!
--
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