From: Michael Tokarev <mjt@tls.msk.ru>
To: Neil Brown <neilb@suse.de>
Cc: Alex Tomas <alex@clusterfs.com>, linux-raid@vger.kernel.org
Subject: Re: linear writes to raid5
Date: Thu, 20 Apr 2006 12:22:56 +0400 [thread overview]
Message-ID: <444744E0.7010509@tls.msk.ru> (raw)
In-Reply-To: <17478.52089.452739.896039@cse.unsw.edu.au>
Neil Brown wrote:
> On Tuesday April 18, mjt@tls.msk.ru wrote:
[]
>> I mean, mergeing bios into larger requests makes alot of sense between
>> a filesystem and md levels, but it makes alot less sense to do that
>> between md and physical (fsvo "physical" anyway) disks.
>
> This seems completely backwards to me, so we must be thinking of
> different things.
>
> Creating large requests above the md level doesn't make a lot of sense
> to me because there is a reasonable chance that md will just need to
> break the requests up again to submit to different devices lower down.
>
> Building large requests for the physical disk makes lots of sense
> because you get much better throughput on an e.g. SCSI buss by having
> few large requests rather than many small requests. But this building
> should be done close to the device so that as much information as
> possible is available about particular device characteristics.
>
> What is the rationale for your position?
My rationale was that if md layer receives *write* requests not smaller
than a full stripe size, it is able to omit reading data to update, and
can just calculate new parity from the new data. Hence, combining a
dozen small write requests coming from a filesystem to form a single
request >= full stripe size should dramatically increase performance.
Eg, when I use dd with O_DIRECT mode (oflag=direct) and experiment with
different block size, write performance increases alot when bs becomes
full stripe size. Ofcourse it decreases again when bs is increased a
bit further (as md starts reading again, to construct parity blocks).
For read requests, it makes much less difference where to combine them.
/mjt
next prev parent reply other threads:[~2006-04-20 8:22 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-08 0:17 linear writes to raid5 Alex Tomas
2006-04-09 20:24 ` Mark Hahn
2006-04-11 20:55 ` Alex Tomas
2006-04-10 0:50 ` Neil Brown
2006-04-11 21:05 ` Alex Tomas
2006-04-12 0:15 ` Neil Brown
2006-04-12 15:50 ` Alex Tomas
2006-04-12 16:01 ` Alex Tomas
2006-04-16 23:22 ` Neil Brown
2006-04-18 14:28 ` Michael Tokarev
2006-04-19 19:43 ` Alex Tomas
2006-04-19 23:44 ` Neil Brown
2006-04-20 8:22 ` Michael Tokarev [this message]
2006-04-27 0:18 ` Neil Brown
2006-04-19 19:40 ` Alex Tomas
2006-04-19 23:54 ` Neil Brown
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=444744E0.7010509@tls.msk.ru \
--to=mjt@tls.msk.ru \
--cc=alex@clusterfs.com \
--cc=linux-raid@vger.kernel.org \
--cc=neilb@suse.de \
/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).