From: Jens Axboe <jens.axboe@oracle.com>
To: Vivek Goyal <vgoyal@redhat.com>
Cc: Moyer Jeff Moyer <jmoyer@redhat.com>,
linux kernel mailing list <linux-kernel@vger.kernel.org>,
Corrado Zoccolo <czoccolo@gmail.com>
Subject: Re: [PATCH] Fix regression in direct writes performance due to WRITE_ODIRECT flag removal
Date: Thu, 26 Nov 2009 09:45:48 +0100 [thread overview]
Message-ID: <20091126084548.GO8742@kernel.dk> (raw)
In-Reply-To: <20091124212628.GC2803@redhat.com>
On Tue, Nov 24 2009, Vivek Goyal wrote:
> Hi Jens,
>
> There seems to be a regression in direct write path due to following
> commit in for-2.6.33 branch of block tree.
>
> commit 1af60fbd759d31f565552fea315c2033947cfbe6
> Author: Jeff Moyer <jmoyer@redhat.com>
> Date: Fri Oct 2 18:56:53 2009 -0400
>
> block: get rid of the WRITE_ODIRECT flag
>
>
> Marking direct writes as WRITE_SYNC_PLUG instead of WRITE_ODIRECT, sets
> the NOIDLE flag in bio and hence in request. This tells CFQ to not expect
> more request from the queue and not idle on it (despite the fact that
> queue's think time is less and it is not seeky).
>
> So direct writers lose big time when competing with sequential readers.
>
> Using fio, I have run one direct writer and two sequential readers and
> following are the results with 2.6.32-rc7 kernel and with for-2.6.33
> branch.
>
> Test
> ====
> 1 direct writer and 2 sequential reader running simultaneously.
>
> [global]
> directory=/mnt/sdc/fio/
> runtime=10
>
> [seqwrite]
> rw=write
> size=4G
> direct=1
>
> [seqread]
> rw=read
> size=2G
> numjobs=2
>
> 2.6.32-rc7
> ==========
> direct writes: aggrb=2,968KB/s
> readers : aggrb=101MB/s
>
> for-2.6.33 branch
> =================
> direct write: aggrb=19KB/s
> readers aggrb=137MB/s
Thanks, that shows pretty well the impact that idling can have :-).
I have applied it.
--
Jens Axboe
prev parent reply other threads:[~2009-11-26 8:45 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-24 21:26 [PATCH] Fix regression in direct writes performance due to WRITE_ODIRECT flag removal Vivek Goyal
2009-11-26 8:45 ` Jens Axboe [this message]
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=20091126084548.GO8742@kernel.dk \
--to=jens.axboe@oracle.com \
--cc=czoccolo@gmail.com \
--cc=jmoyer@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=vgoyal@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