From: "Timothy Normand Miller" <theosib@gmail.com>
To: "Arjan van de Ven" <arjan@infradead.org>
Cc: linux-kernel@vger.kernel.org
Subject: Re: HELP: Getting unexpected fakeraid behavior. Fix?
Date: Sun, 6 Jul 2008 16:44:16 -0400 [thread overview]
Message-ID: <9871ee5f0807061344u155db848r96863535eb00f3ce@mail.gmail.com> (raw)
In-Reply-To: <20080706131937.13065312@infradead.org>
On Sun, Jul 6, 2008 at 4:19 PM, Arjan van de Ven <arjan@infradead.org> wrote:
>> Since RAID1 is a mirrored configuration, it's possible to distribute
>> reads across the drives, improving throughput and latency over a
>> single drive on random reads.
>
> This is.. borderline true. Let me explain the caveats;
> for a SINGLE THREADED workload, there is actually no difference.
> Balancing long sequential reads over the 2 disks isn't such a good idea
> for that case, since it just introduces seeks rather than keep up with
> the streaming speed.
> Balancing seeks; there might be some theoretical advantage because you
> could, again in theory, do shorter seeks if you keep one head at the
> inside and one the other disk head on the outside. In practice... a lot
> of the seek time is rotational latency so it's not as big a deal as it
> may sound; the moment you seek you pay a ton.
Ok, I see. This makes sense. It is a single thread. I did kindof
expect that since the spatial locality of the metadata and files
themselves (thousands of 2K byte files being read in a different order
from which they were created) should not be very good, the kernel
would round-robin (or probably something better) the requests (single
blocks and sequential groups of blocks) between drives.
So, if I were to divide these reads across multiple threads, I would
see requests to both drives? I'm wondering now if that would really
help, although as far as I can tell, what I'm doing is dominated by
seek time.
And the kernel pays attention to which thread caused a given request?
What if you have two threads alternatively reading one file? (Which
would obviously have to be serialized by locks.) Just curious. :)
> if your application is single threaded this isn't totally unexpected as
> a result...
Oh, and one other question. I know the drives are AHCI capable, and
when I read the drive flags, they report that it's enabled, and that
the queue depth is 31. For the controller, the BIOS has three
settings, IDE, AHCI, and RAID. In IDE mode, NCQ and other AHCI
features are disabled. Unfortunately, the BIOS and manual for the
motherboard do not state that AHCI features are enabled in RAID mode.
Is there a way I can query to kernel to see if it's actually USING
NCQ?
The reason I'm on about this is that the workloads I'm throwing at
this computer are (sometimes) badly bottlenecked by the disks, so if I
can get better throughput, that would help a lot.
Thank you for your help.
--
Timothy Normand Miller
http://www.cse.ohio-state.edu/~millerti
Open Graphics Project
next prev parent reply other threads:[~2008-07-06 20:44 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-07-06 20:07 Timothy Normand Miller
2008-07-06 20:19 ` Arjan van de Ven
2008-07-06 20:44 ` Timothy Normand Miller [this message]
2008-07-06 21:24 ` Timothy Normand Miller
2008-07-07 1:22 ` Timothy Normand Miller
2008-07-07 1:26 ` Timothy Normand Miller
2008-07-07 9:57 ` Joseph Fannin
2008-07-07 11:31 ` Timothy Normand Miller
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=9871ee5f0807061344u155db848r96863535eb00f3ce@mail.gmail.com \
--to=theosib@gmail.com \
--cc=arjan@infradead.org \
--cc=linux-kernel@vger.kernel.org \
/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
all inboxes | Powered by JetHome®