Re: [PATCH] don't change direct I/O xfer size during initial layout setup

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

 



On 09/05/2017 01:00 PM, Sitsofe Wheeler wrote:
> On 5 September 2017 at 15:58, Jens Axboe <axboe@xxxxxxxxx> wrote:
>> On 09/05/2017 08:54 AM, Tomohiro Kusumi wrote:
>>> I think I've made three fixes over the original two commits.
>>>
>>> 1. non O_DIRECT dio support -> committed -> now reverted
>>> 2. segfault on fio_memfree() -> committed -> now reverted
>>> 3. this one
>>>
>>> As far as I've seen this is it.
>>
>> Right, just checked (and reverted) and it's 5 changes all in
>> all for the change, not including the parent to this email,
>> which would have made it 6 in all. The original change from Weiping
>> clearly wasn't well tested or thought through, so it's better
>> to just kill it all and do it cleanly from scratch instead.
> 
> Unfortunately it's been a problem magnetic with stacks of extra
> conditions turning up and corner cases to stumble over (see
> https://github.com/sitsofe/fio/commit/8fed4ccc87e39144643b1e32caddd882e6197e58
> for yet another case that was going to need fixing).
> 
>> That said, I'm not even convinced we need this change. Logically
>> it makes sense, but there's really nothing wrong with doing
>> a buffered layout + cache kill as we have been doing since
>> the dawn of time in fio.
> 
> One of the benefits was that it stopped
> 
> rm -f /tmp/fiofile; ./fio --loops=10 --filename /tmp/fiofile --bs=4k \
>  --size=1M --direct=1 --name=go
> 
> reporting cached speeds on macOS (a platform where invalidation
> doesn't work). The sad thing is that the change wound up slowing
> layout right down because the I/O is potentially done in such small
> sizes. With the problems it attracted it need a re-think if it's to
> avoid attracting a never ending stream of workarounds.

Slowing down layout for everyone is a much larger issue (and a
regression), whereas the lack of cache invalidation on a 2nd tier
platform is much less interesting. Of the two, I know what I'd pick.

It'd be nice if we can get everything working nicely. Honestly, it's not
rocket science (at all) to use O_DIRECT for layouts. The performance
issue is the biggest hurdle, the only thing we can do there is use a
larger block size and hope it closes enough of the gap.

-- 
Jens Axboe

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