From: David Greaves <david@dgreaves.com>
To: Dan Christensen <jdc@uwo.ca>
Cc: mingz@ele.uri.edu, Linux RAID <linux-raid@vger.kernel.org>
Subject: Re: RAID-5 streaming read performance
Date: Wed, 13 Jul 2005 19:02:34 +0100 [thread overview]
Message-ID: <42D5573A.6090801@dgreaves.com> (raw)
In-Reply-To: <87vf3eeqe2.fsf@uwo.ca>
Dan Christensen wrote:
>Ming Zhang <mingz@ele.uri.edu> writes:
>
>
>
>>test on a production environment is too dangerous. :P
>>and many benchmark tool u can not perform as well.
>>
>>
>
>Well, I put "production" in quotes because this is just a home mythtv
>box. :-) So there are plenty of times when it is idle and I can do
>benchmarks. But I can't erase the hard drives in my tests.
>
>
Me too.
>>LVM overhead is small, but file system overhead is hard to say.
>>
>>
>I expected LVM overhead to be small, but in my tests it is very high.
>I plan to discuss this on the lvm mailing list after I've got the RAID
>working as well as possible, but as an example:
>
>Streaming reads using dd to /dev/null:
>
>component partitions, e.g. /dev/sda7: 58MB/s
>raid device /dev/md2: 59MB/s
>lvm device /dev/main/media: 34MB/s
>
>
This is not my experience.
What are the readahead settings?
I found significant variation in performance by varying the readahead at
raw, md and lvm device level
In my setup I get
component partitions, e.g. /dev/sda7: 39MB/s
raid device /dev/md2: 31MB/s
lvm device /dev/main/media: 53MB/s
(oldish system - but note that lvm device is *much* faster)
For your entertainment you may like to try this to 'tune' your readahead
- it's OK to use so long as you're not recording:
(FYI I find that setting readahead to 0 on all devices and 4096 on the
lvm device gets me the best performance - which makes sense if you think
about it...)
#!/bin/bash
RAW_DEVS="/dev/sda /dev/sdb /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/hdb"
MD_DEVS=/dev/md0
LV_DEVS=/dev/huge_vg/huge_lv
LV_RAS="0 128 256 1024 4096 8192"
MD_RAS="0 128 256 1024 4096 8192"
RAW_RAS="0 128 256 1024 4096 8192"
function show_ra()
{
for i in $RAW_DEVS $MD_DEVS $LV_DEVS
do echo -n "$i `blockdev --getra $i` :: "
done
echo
}
function set_ra()
{
RA=$1
shift
for dev in $@
do
blockdev --setra $RA $dev
done
}
function show_performance()
{
COUNT=4000000
dd if=$LV_DEVS of=/dev/null count=$COUNT 2>&1 | grep seconds
}
for RAW_RA in $RAW_RAS
do
set_ra $RAW_RA $RAW_DEVS
for MD_RA in $MD_RAS
do
set_ra $MD_RA $MD_DEVS
for LV_RA in $LV_RAS
do
set_ra $LV_RA $LV_DEVS
show_ra
show_performance
done
done
done
next prev parent reply other threads:[~2005-07-13 18:02 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-07-11 15:11 RAID-5 streaming read performance Dan Christensen
2005-07-13 2:08 ` Ming Zhang
2005-07-13 2:52 ` Dan Christensen
2005-07-13 3:15 ` berk walker
2005-07-13 12:24 ` Ming Zhang
2005-07-13 12:48 ` Dan Christensen
2005-07-13 12:52 ` Ming Zhang
2005-07-13 14:23 ` Dan Christensen
2005-07-13 14:29 ` Ming Zhang
2005-07-13 17:56 ` Dan Christensen
2005-07-13 22:38 ` Neil Brown
2005-07-14 0:09 ` Ming Zhang
2005-07-14 1:16 ` Neil Brown
2005-07-14 1:25 ` Ming Zhang
2005-07-13 18:02 ` David Greaves [this message]
2005-07-13 18:14 ` Ming Zhang
2005-07-13 21:18 ` David Greaves
2005-07-13 21:44 ` Ming Zhang
2005-07-13 21:50 ` David Greaves
2005-07-13 21:55 ` Ming Zhang
2005-07-13 22:52 ` Neil Brown
2005-07-14 3:58 ` Dan Christensen
2005-07-14 4:13 ` Mark Hahn
2005-07-14 21:16 ` Dan Christensen
2005-07-14 21:30 ` Ming Zhang
2005-07-14 23:29 ` Mark Hahn
2005-07-15 1:23 ` Ming Zhang
2005-07-15 2:11 ` Dan Christensen
2005-07-15 12:28 ` Ming Zhang
2005-07-14 12:30 ` Ming Zhang
2005-07-14 14:23 ` Ming Zhang
2005-07-14 17:54 ` Dan Christensen
2005-07-14 18:00 ` Ming Zhang
2005-07-14 18:03 ` Dan Christensen
2005-07-14 18:10 ` Ming Zhang
2005-07-14 19:16 ` Dan Christensen
2005-07-14 20:13 ` Ming Zhang
2005-07-15 2:38 ` Dan Christensen
2005-07-15 6:01 ` Holger Kiehl
2005-07-15 12:29 ` Ming Zhang
2005-07-13 22:42 ` 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=42D5573A.6090801@dgreaves.com \
--to=david@dgreaves.com \
--cc=jdc@uwo.ca \
--cc=linux-raid@vger.kernel.org \
--cc=mingz@ele.uri.edu \
/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.