From: Jens Axboe <axboe@kernel.dk>
To: Werner Fischer <devlists@wefi.net>
Cc: Jeff Moyer <jmoyer@redhat.com>,
"fio@vger.kernel.org" <fio@vger.kernel.org>
Subject: Re: Linux I/O stack design question
Date: Thu, 01 Sep 2011 15:13:30 -0600 [thread overview]
Message-ID: <4E5FF57A.1040908@kernel.dk> (raw)
In-Reply-To: <1314908867.2091.23.camel@werner-t410>
On 2011-09-01 14:27, Werner Fischer wrote:
>> One note on that - this mode is going
>> away in the future.
> Do you mean that this mode is going away in the future for the Fusion-io
> driver or that generally no driver will be able to hook in there (also
> the mtip32xx and nvmhci-express drivers you mention below)?
For this particular case, I meant the fusion-io driver. Even for the
current 2.x series of the driver, bypassing the IO scheduler is not the
default. You have to manually specify that with a module option.
>> You end up losing out on request merging, so write
>> performance is hampered, for one.
>>
>> The Micron pci-e mtip32xx driver does similarly, as does the
>> nvmhci-express driver from Intel. IMHO it's largely due to
>> inefficiencies in the IO stack, once we get those fixed, we should be
>> getting back to the one true single IO mode for a driver.
> With "one true single IO mode for a driver" you mean that every device
> driver should sit and stay below the I/O scheduler?
> Or do you mean that there should only be one single I/O scheduler? (in
> the patch removing the anticipatory scheduler you suggested something
> like this:
> http://git.kernel.org/linus/492af6350a5ccf087e4964104a276ed358811458 )
I mean that every device should plug in at the same place. There are
definite up and down sides to plugging in at the stacking level and
bypassing the IO scheduler. So you have to weight the pros and cons
before doing that. We need to fix this. Drivers doing that lose out on
other features in the name of a bit more performance, that's just not
acceptable.
--
Jens Axboe
next prev parent reply other threads:[~2011-09-01 21:13 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-01 12:33 Linux I/O stack design question Werner Fischer
2011-09-01 14:19 ` Jeff Moyer
2011-09-01 20:14 ` Werner Fischer
2011-09-01 20:17 ` Jens Axboe
2011-09-01 20:27 ` Werner Fischer
2011-09-01 21:13 ` Jens Axboe [this message]
2011-09-05 14:01 ` Werner Fischer
2011-09-08 12:39 ` Jens Axboe
2011-09-12 6:36 ` Werner Fischer
2011-09-27 14:06 ` Martin Steigerwald
2012-03-06 10:46 ` Announce: Linux I/O stack diagram (was: Re: Linux I/O stack design question) Werner Fischer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4E5FF57A.1040908@kernel.dk \
--to=axboe@kernel.dk \
--cc=devlists@wefi.net \
--cc=fio@vger.kernel.org \
--cc=jmoyer@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox