From: Jeremy Allison <jra@samba.org>
To: Milosz Tanski <milosz@adfin.com>
Cc: Jan Kara <jack@suse.cz>,
lsf-pc@lists.linux-foundation.org,
"linux-fsdevel@vger.kernel.org" <linux-fsdevel@vger.kernel.org>,
linux-mm@kvack.org, Christoph Hellwig <hch@infradead.org>
Subject: Re: [Lsf-pc] [LSF/MM TOPIC] async buffered diskio read for userspace apps
Date: Fri, 16 Jan 2015 08:55:06 -0800 [thread overview]
Message-ID: <20150116165506.GA10856@samba2> (raw)
In-Reply-To: <CANP1eJGRX4w56Ek4j7d2U+F7GNWp6RyOJonxKxTy0phUCpBM9g@mail.gmail.com>
On Fri, Jan 16, 2015 at 10:44:12AM -0500, Milosz Tanski wrote:
> On Thu, Jan 15, 2015 at 5:31 PM, Jan Kara <jack@suse.cz> wrote:
> > On Thu 15-01-15 12:43:23, Milosz Tanski wrote:
> >> I would like to talk about enhancing the user interfaces for doing
> >> async buffered disk IO for userspace applications. There's a whole
> >> class of distributed web applications (most new applications today)
> >> that would benefit from such an API. Most of them today rely on
> >> cobbling one together in user space using a threadpool.
> >>
> >> The current in kernel AIO interfaces that only support DIRECTIO, they
> >> were generally designed by and for big database vendors. The consensus
> >> is that the current AIO interfaces usually lead to decreased
> >> performance for those app.
> >>
> >> I've been developing a new read syscall that allows non-blocking
> >> diskio read (provided that data is in the page cache). It's analogous
> >> to what exists today in the network world with recvmsg with MSG_NOWAIT
> >> flag. The work has been previously described by LWN here:
> >> https://lwn.net/Articles/612483/
> >>
> >> Previous attempts (over the last 12+ years) at non-blocking buffered
> >> diskio has stalled due to their complexity. I would like to talk about
> >> the problem, my solution, and get feedback on the course of action.
> >>
> >> Over the years I've been building the low level guys of various "web
> >> applications". That usually involves async network based applications
> >> (epoll based servers) and the biggest pain point for the last 8+ years
> >> has been async disk IO.
> > Maybe this topic will be sorted out before LSF/MM. I know Andrew had some
> > objections about doc and was suggesting a solution using fincore() (which
> > Christoph refuted as being racy). Also there was a pending question
> > regarding whether the async read in this form will be used by applications.
> > But if it doesn't get sorted out a short session on the pending issues
> > would be probably useful.
> >
> > Honza
> > --
> > Jan Kara <jack@suse.cz>
> > SUSE Labs, CR
>
> I've spent the better part of yesterday wrapping up the first cut of
> samba support to FIO so we can test a modified samba file server with
> these changes in a few scenarios. Right now it's only sync but I hope
> to have async in the future. I hope that by the time the summit rolls
> around I'll have data to share from samba and maybe some other common
> apps (node.js / twisted).
Don't forget to share the code changes :-). We @ Samba would
love to see them to keep track !
next prev parent reply other threads:[~2015-01-16 16:55 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-15 17:43 [LSF/MM TOPIC] async buffered diskio read for userspace apps Milosz Tanski
2015-01-15 18:30 ` Jeff Moyer
2015-01-16 15:40 ` Milosz Tanski
2015-01-15 22:31 ` [Lsf-pc] " Jan Kara
2015-01-16 15:44 ` Milosz Tanski
2015-01-16 16:55 ` Jeremy Allison [this message]
2015-01-19 3:49 ` Milosz Tanski
2015-01-19 7:12 ` Jeremy Allison
2015-01-19 7:34 ` James Bottomley
2015-01-19 14:18 ` Milosz Tanski
2015-01-19 15:31 ` Jens Axboe
2015-01-19 15:49 ` James Bottomley
2015-01-19 16:48 ` Jeremy Allison
2015-01-19 17:26 ` James Bottomley
2015-01-19 17:32 ` Jeremy Allison
2015-01-19 17:36 ` Richard Sharpe
2015-01-19 20:00 ` Jens Axboe
2015-01-19 16:10 ` Volker Lendecke
2015-01-19 16:20 ` Milosz Tanski
2015-01-19 16:50 ` Jeremy Allison
2015-01-23 23:15 ` Steve French
2015-01-24 2:17 ` Jens Axboe
2015-01-24 5:53 ` Jeremy Allison
2015-01-24 23:00 ` Jens Axboe
2015-01-20 19:33 ` Jens Axboe
2015-01-20 23:07 ` Milosz Tanski
2015-01-20 23:22 ` Milosz Tanski
2015-01-20 23:26 ` Jens Axboe
2015-01-20 23:30 ` Jens Axboe
2015-01-20 23:53 ` Milosz Tanski
2015-01-21 21:17 ` Jens Axboe
2015-01-23 0:03 ` Milosz Tanski
2015-01-23 0:10 ` Milosz Tanski
2015-01-19 17:04 ` Jeremy Allison
2015-01-19 17:18 ` Richard Sharpe
2015-01-19 17:20 ` Jeremy Allison
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=20150116165506.GA10856@samba2 \
--to=jra@samba.org \
--cc=hch@infradead.org \
--cc=jack@suse.cz \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=lsf-pc@lists.linux-foundation.org \
--cc=milosz@adfin.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;
as well as URLs for NNTP newsgroup(s).