From: Brian Foster <bfoster@redhat.com>
To: "Maxim V. Patlasov" <MPatlasov@parallels.com>
Cc: miklos@szeredi.hu, dev@parallels.com, xemul@parallels.com,
fuse-devel@lists.sourceforge.net, linux-kernel@vger.kernel.org,
devel@openvz.org
Subject: Re: [PATCH v2 0/6] fuse: process direct IO asynchronously
Date: Tue, 18 Dec 2012 09:14:29 -0500 [thread overview]
Message-ID: <50D07A45.3080809@redhat.com> (raw)
In-Reply-To: <20121214151424.27155.45971.stgit@maximpc.sw.ru>
On 12/14/2012 10:20 AM, Maxim V. Patlasov wrote:
> Hi,
>
...
> The throughput on some commodity (rather feeble) server was (in MB/sec):
>
> original / patched
>
> dd reads: ~322 / ~382
> dd writes: ~277 / ~288
>
> aio reads: ~380 / ~459
> aio writes: ~319 / ~353
>
> Changed in v2 - cleanups suggested by Brian:
> - Updated fuse_io_priv with an async field and file pointer to preserve
> the current style of interface (i.e., use this instead of iocb).
> - Trigger the type of request submission based on the async field.
> - Pulled up the fuse_write_update_size() call out of __fuse_direct_write()
> to make the separate paths more consistent.
>
This version plus the updated "fuse: truncated file if async dio failed
- v2" patch address all the questions I had on the set, so consider it:
Reviewed-by: Brian Foster <bfoster@redhat.com>
I also ran some of your aio/dio performance tests on a basic gluster
volume (single client to server) and repeated positive results. The
results include rewrite numbers (file extending writes generally matched
original throughput). Results in MB/s:
original / patched
1GigE
dd reads: ~74 / ~104
dd rewrites: ~67 / ~103
aio reads: ~53 / ~110
aio rewrites: ~52 / ~112
10GigE
dd reads: ~175 / ~437
dd rewrites: ~134 / ~390
aio reads: ~84 / ~417
aio rewrites: ~88 / ~401
Brian
> Thanks,
> Maxim
>
> ---
>
> Maxim V. Patlasov (6):
> fuse: move fuse_release_user_pages() up
> fuse: add support of async IO
> fuse: make fuse_direct_io() aware about AIO
> fuse: enable asynchronous processing direct IO
> fuse: truncate file if async dio failed
> fuse: optimize short direct reads
>
>
> fs/fuse/cuse.c | 6 +
> fs/fuse/file.c | 290 +++++++++++++++++++++++++++++++++++++++++++++++-------
> fs/fuse/fuse_i.h | 19 +++-
> 3 files changed, 276 insertions(+), 39 deletions(-)
>
next prev parent reply other threads:[~2012-12-18 14:16 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-14 15:20 [PATCH v2 0/6] fuse: process direct IO asynchronously Maxim V. Patlasov
2012-12-14 15:20 ` [PATCH 1/6] fuse: move fuse_release_user_pages() up Maxim V. Patlasov
2012-12-14 15:20 ` [PATCH 2/6] fuse: add support of async IO Maxim V. Patlasov
2013-04-22 16:34 ` Miklos Szeredi
2013-04-23 12:21 ` Maxim V. Patlasov
2012-12-14 15:20 ` [PATCH 3/6] fuse: make fuse_direct_io() aware about AIO Maxim V. Patlasov
2012-12-14 15:21 ` [PATCH 4/6] fuse: enable asynchronous processing direct IO Maxim V. Patlasov
2012-12-14 15:21 ` [PATCH 5/6] fuse: truncate file if async dio failed Maxim V. Patlasov
2012-12-14 20:16 ` Brian Foster
2012-12-17 14:13 ` Maxim V. Patlasov
2012-12-17 19:04 ` Brian Foster
2012-12-18 8:12 ` Maxim V. Patlasov
2013-04-17 20:42 ` Miklos Szeredi
2012-12-18 10:05 ` [PATCH] fuse: truncate file if async dio failed - v2 Maxim V. Patlasov
2012-12-14 15:21 ` [PATCH 6/6] fuse: optimize short direct reads Maxim V. Patlasov
2012-12-18 14:14 ` Brian Foster [this message]
2013-04-11 11:22 ` [fuse-devel] [PATCH v2 0/6] fuse: process direct IO asynchronously Maxim V. Patlasov
2013-04-11 16:07 ` Miklos Szeredi
2013-04-11 16:43 ` Maxim V. Patlasov
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=50D07A45.3080809@redhat.com \
--to=bfoster@redhat.com \
--cc=MPatlasov@parallels.com \
--cc=dev@parallels.com \
--cc=devel@openvz.org \
--cc=fuse-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=miklos@szeredi.hu \
--cc=xemul@parallels.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.