From: Hans Kristian Rosbach <hk@isphuset.no>
Cc: linux-raid@vger.kernel.org
Subject: Re: RAID1 & 2.6.9 performance problem
Date: Tue, 18 Jan 2005 14:18:04 +0100 [thread overview]
Message-ID: <1106054284.17481.21.camel@linux.local> (raw)
In-Reply-To: <6o6tb2-cj2.ln1@news.it.uc3m.es>
On Mon, 2005-01-17 at 17:46, Peter T. Breuer wrote:
> Hans Kristian Rosbach <hk@isphuset.no> wrote:
> > -It selects the disk that is closest to the wanted sector by
remembering
> > what sector was last requested and what disk was used for it.
> > -For sequential reads (sucha as hdparm) it will override and use the
> > same disk anyways. (sector = lastsector+1)
> >
> > I gained a lot of throughput by alternating disk, but seek time was
> > roughly doubled. I also tried to get smart and played some with the
> > code in order to avoid seeking both disks back and forth wildly when
> > there were two sequential reads. I didn't find a good way to do it
> > unfortunately.
>
> Interesting. How did you measure latency? Do you have a script you
> could post?
It's part of another application we use internally at work. I'll check
to see wether part of it could be GPL'ed or similar.
But it is also logical since for two requests in a row to sector and
sector +1, it will first seek disk1 and then disk2 when the second
request arrives. Atleast it was that way with my hack.
I was pondering maybe doing something like a virtual stripe array, such
that the data reads are logically alternated between the functioning
disks. Since it's virtual the block-size and number of disks could be
changed in run-time for speed tweaking or failed disks.
The tweaking of block size could be managed automagically by a userspace
daemon that monitors load patterns and such. A step further would be to
monitor disk-speed, so if a disk is slow it gets less/smaller stripe
segments than the other disks do. This would be ideal for a software
mirror running atop two raid-5 volumes for example, so that if one of
the raid5 volumes is degraded the speed won't fail totally.
> > I'm not going to make any patch available, because I removed
bad-disk
> > checking in order to simplify it.
>
> The FR1 patch measures disk latency and weights the disk head
distances
> by the measured latency, which may help. It probably also gets rid of
> that sequential read thing (I haven't done anything but port the patch
> to 2.6, not actually run it in anger!).
Latency measuring is an excellent profile imho, this would probably also
reduce the speed variation when using disks of different types.
I'll take a look at the code, and do some benchmarks when I get time.
It'll probably be this weekend.
> ftp://oboe.it.uc3m.es/pub/Programs/fr1-2.15b.tgz
>
> (I am doing a 2.16 with the robust-read patch I suggested added in).
Keep me posted =)
> I really don't think this measuring disk head position can help unless
> raid controls ALL of the disks in question, or the disks are otherwise
> inactive. Is that your case?
Yep, head position is imho not a factor to be considered at all.
Currently I'm working on a database project that needs all the read
speed I can get. So what i'd like to do is to add for example 8 disks in
a mirror, and hopefully get 4-6x the overall read speed.
-HK
next prev parent reply other threads:[~2005-01-18 13:18 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-01-17 15:22 RAID1 & 2.6.9 performance problem Janusz Zamecki
2005-01-17 15:39 ` Gordon Henderson
2005-01-17 15:51 ` Hans Kristian Rosbach
2005-01-17 16:46 ` Peter T. Breuer
2005-01-18 13:18 ` Hans Kristian Rosbach [this message]
2005-01-18 13:43 ` Peter T. Breuer
2005-01-17 20:49 ` Janusz Zamecki
2005-01-17 16:24 ` Andrew Walrond
2005-01-17 16:51 ` Is this hdparm -t output correct? (was Re: RAID1 & 2.6.9 performance problem) Andy Smith
2005-01-17 17:04 ` Andrew Walrond
2005-01-17 18:26 ` RAID1 Corruption Markus Gehring
2005-01-17 19:14 ` Paul Clements
2005-01-17 19:35 ` Tony Mantler
2005-01-17 19:42 ` Markus Gehring
2005-01-17 19:21 ` Sven Anders
2005-01-18 17:32 ` RAID1 & 2.6.9 performance problem J. Ryan Earl
2005-01-18 17:34 ` J. Ryan Earl
2005-01-18 18:41 ` Janusz Zamecki
2005-01-18 19:18 ` J. Ryan Earl
2005-01-18 19:34 ` Janusz Zamecki
2005-01-18 19:12 ` Janusz Zamecki
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=1106054284.17481.21.camel@linux.local \
--to=hk@isphuset.no \
--cc=linux-raid@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;
as well as URLs for NNTP newsgroup(s).