Gilboa Davara | 2 Sep 2006 10:40
Picon

Re: IDE RAID controller and software raid in linux

On Sat, 2006-09-02 at 10:53 +0300, Rafi Gordon wrote:
> Hi  Gilboa ,
> 
>   Thanks for your qeustion.
> 
> I had encountered chapter 26 , which is devoted to linux software raid ,in
> "Linux(r) Quick Fix Notebook" book  By Peter Harrison.
>     (Published by Prentice Hall.)
> Here is a quote grom the end of this chapter:
> 
> CONCLUSION
> Linux software RAID provides redundancy across partitions and hard disks,
> but it tends to be slower and less reliable than RAID provided by a
> hardwarebased
> RAID disk controller.
> 
> > No advantage what-so-ever
> 
> So when you say "No advantage what-so-ever" ,are you referring only when
> comparing linux raid software to chip IDE RAID cards ? or is your
> opinion different than  Peter Harrison, the book author ?
> 
> Regards,
> R. Gordon

In my previous workplace we did extensive benchmarks between a 3ware
9xxx 8-port SATA RAID controller and software RAID using the Intel ICH
and in general, the 3ware was indeed faster (and much more expensive).
However, under certain workloads the software RAID outperformed it and
as we replaced the CPUs from Nocoma Xeons to AMD Opteorns, the
(Continue reading)

Rafi Gordon | 27 Sep 2006 17:21
Picon

Re: IDE RAID controller and software raid in linux

Hello,

I made some more research on this topic.

I am thinking of a solution using linux software RAID
for disk crash.

RAID 1 seems the best solution for this. (am I right?)
It works with disk mirroring. This means that the data is in fact
duplicated and written to both disks. This of course sets a high
load on the CPU and the data buses.

So my question is:
In practical terms, suppose we have 2 common 200 GB SATA-II disks (7200 RPM)
buffer size 8MB, and about 8-10 ms average seek time for read/write
(Or something like that). And suppose we have a 1GB RAM , on
x86  (not 64 bit) with about 3GHZ CPU clock.

And suppose we are NOT talking about servers but of a
common linux programmer environment. (But on which a disk
crash is unbearable and there is management which may afford
another disk for that withouth hesitating).

Will it be bearable to use such a solution ?

Or will the machine be so slow that it will be unbearable ?

I simply cannot test Linux RAID 1 performance because
it invloves erasing data and formattin to create a
RAID set.
(Continue reading)

Jacob Broido | 27 Sep 2006 21:56
Picon

Re: IDE RAID controller and software raid in linux

Hey,

I agree that RAID 1 seems to be best solution for current scenario.

With Raid 1 you recieve a really good data protection with very little performance impact(more about this below).

On the other hand, RAID 5 is quite expensive and will result in performance penalty both on the CPU and IO.

To emphasize on the diffrences in IO performances in RAID1 and RAID5, I will explain what happens in both Read and Write operations.


Write Operation  - Raid 1(Mirror): IO command is issued to first Mirror Member. As soon as the command is dispatched (before it finishes) same write command is issued to other Mirror Member. Which in fact results for much lower write overhead than often considered. In general the write degradation in 2-Way Mirror is around 20% versus single disk.

Read Operation - Raid 1 (Mirror): IO is performed on the least busy Mirror Member. This means that in multiuser/multi threaded environments a meaningfull performance boost is achived in reads.

Write Operation  - Raid 5: IO write command is issued to all member disk in the stripe. In addition a parity of the written data is computated(CPU) and the output is written to one of the member disks(each time a diffrent disk).The overhead depends on the CPU you have and the amount of disks in your RAID.

Read Operation - Raid 5 : IO is performed on all stripe members. Utilizing multiple disks. again in this case, there is an excellent performance.


In summary: raid 5 is great if you must use more than 2 disks and want data protection with great read performance and somewhat lacking write performance(most of write performance penalty can be removed with ddidcated RAID controllers with own parity proccessor and write cache). Raid 1 is offers the best(only) data protection solution for 2 member disks and provides good write performance and great read performance.


Note: I didnt talk about RAID 1+0 or 0+1 here, since I understood you're considering either Raid 1 with two disks or Raid 5 with more disks.

If you really concerned about your IO performance, you do some homework first and analyze your typical workload(how much percent you spend writing/reading, Disk loads, bandwidth,etc..). Based on this data you should build you configuration, Or you could simply go with RAID 1.

Good Luck.


On 9/27/06, Rafi Gordon < rafigordon-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
Hello,

I made some more research on this topic.

I am thinking of a solution using linux software RAID
for disk crash.


RAID 1 seems the best solution for this. (am I right?)
It works with disk mirroring. This means that the data is in fact
duplicated and written to both disks. This of course sets a high
load on the CPU and the data buses.

So my question is:
In practical terms, suppose we have 2 common 200 GB SATA-II disks (7200 RPM)
buffer size 8MB, and about 8-10 ms average seek time for read/write
(Or something like that). And suppose we have a 1GB RAM , on
x86  (not 64 bit) with about 3GHZ CPU clock.

And suppose we are NOT talking about servers but of a
common linux programmer environment. (But on which a disk
crash is unbearable and there is management which may afford
another disk for that withouth hesitating).

Will it be bearable to use such a solution ?

Or will the machine be so slow that it will be unbearable ?

I simply cannot test Linux RAID 1 performance because
it invloves erasing data and formattin to create a
RAID set.

So if anyone have experience with Linux RAID-1, he is welcomed
to respond.

RG




On 9/2/06, Gilboa Davara <gilboad-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote:
> On Sat, 2006-09-02 at 10:53 +0300, Rafi Gordon wrote:
> > Hi  Gilboa ,
> >
> >   Thanks for your qeustion.
> >
> > I had encountered chapter 26 , which is devoted to linux software raid ,in
> > "Linux(r) Quick Fix Notebook" book  By Peter Harrison.
> >     (Published by Prentice Hall.)
> > Here is a quote grom the end of this chapter:
> >
> > CONCLUSION
> > Linux software RAID provides redundancy across partitions and hard disks,
> > but it tends to be slower and less reliable than RAID provided by a
> > hardwarebased
> > RAID disk controller.
> >
> > > No advantage what-so-ever
> >
> > So when you say "No advantage what-so-ever" ,are you referring only when
> > comparing linux raid software to chip IDE RAID cards ? or is your
> > opinion different than  Peter Harrison, the book author ?
> >
> > Regards,
> > R. Gordon
>
> In my previous workplace we did extensive benchmarks between a 3ware
> 9xxx 8-port SATA RAID controller and software RAID using the Intel ICH
> and in general, the 3ware was indeed faster (and much more expensive).
> However, under certain workloads the software RAID outperformed it and
> as we replaced the CPUs from Nocoma Xeons to AMD Opteorns, the
> performance gap decrease considerably.
>
> In short, if you afford an expensive SATA/IDE raid, it -should- perform
> better then the kernel software RAID. If you want to spend less then 400
> $ on a (new) RAID controller, don't bother, it'll perform much slower
> then the Linux' software RAID. *
>
> * As long as you have a reasonably fast (P4 > 2Ghz, AMD > 1.4Ghz)
> machine and enough memory.
>
> Gilboa
>
>
> =================================================================
> To unsubscribe, send mail to linux-il-request-Xh+NVF5n0LIQhDRD3CWCHA@public.gmane.org with
> the word "unsubscribe" in the message body, e.g., run the command
> echo unsubscribe | mail linux-il-request-Xh+NVF5n0LIQhDRD3CWCHA@public.gmane.org
>
>

=================================================================
To unsubscribe, send mail to linux-il-request-Xh+NVF5n0LIQhDRD3CWCHA@public.gmane.org with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail linux-il-request-Xh+NVF5n0LIQhDRD3CWCHA@public.gmane.org




--
Not gonna be king of the world if you're slave to the grind
- Skid Row
Gilboa Davara | 27 Sep 2006 18:56
Picon

Re: IDE RAID controller and software raid in linux

On Wed, 2006-09-27 at 18:21 +0300, Rafi Gordon wrote:
> Hello,
> 
> I made some more research on this topic.
> 
> I am thinking of a solution using linux software RAID
> for disk crash.
> 
> 
> RAID 1 seems the best solution for this. (am I right?)
> It works with disk mirroring. This means that the data is in fact
> duplicated and written to both disks. This of course sets a high
> load on the CPU and the data buses.

Unless you are using a -very- old machine (Pentium I/K5/K6), the CPU
load should be virtually invisible.

> 
> So my question is:
> In practical terms, suppose we have 2 common 200 GB SATA-II disks (7200 RPM)
> buffer size 8MB, and about 8-10 ms average seek time for read/write
> (Or something like that). And suppose we have a 1GB RAM , on
> x86  (not 64 bit) with about 3GHZ CPU clock.

IMHO, I'd get a third 200GB disk and use RAID5. (Creating a second small
RAID1 setup just for /boot)
You should get better (read) performance at the price of a (slightly)
higher CPU load on write.

> 
> And suppose we are NOT talking about servers but of a
> common linux programmer environment. (But on which a disk
> crash is unbearable and there is management which may afford
> another disk for that withouth hesitating).

All my development workstations (Both  <at> work and  <at> home) use a 3/4 disk
RAID5 configurations. In the past I had a number of IDE and SCSI disk
crashes and the machines never lost a heartbeat. At most, I suffered
from a minor performance degradation while the array was being rebuilt
in the background.

> 
> Will it be bearable to use such a solution ?

Sure.

> 
> Or will the machine be so slow that it will be unbearable ?

Running on a 3.0Ghz CPU? You won't notice the RAID - even under severe
I/O and CPU loads.

> 
> I simply cannot test Linux RAID 1 performance because
> it invloves erasing data and formattin to create a
> RAID set.

I just ran a short test (using hdparm) on one of my workstations (which
uses a 4 x 80GB 7.2K IDE setup):

/dev/md0: (/boot, 200MB) 
 Timing cached reads:   2552 MB in  2.00 seconds = 1276.89 MB/sec
 Timing buffered disk reads:   98 MB in  2.03 seconds =  48.28 MB/sec

/dev/md1: (root, ~12GB)
 Timing cached reads:   2848 MB in  2.00 seconds = 1423.99 MB/sec
 Timing buffered disk reads:  296 MB in  3.01 seconds =  98.46 MB/sec

While hdparm is a poor benchmark tool, the 50MB/s (on the RAID1 based
boot) is fairly close to the maximum throughput of older 80GB IDE100
drives.
In short, you should expect better performance out of two 200GB SATA
drives.

Gilboa

=================================================================
To unsubscribe, send mail to linux-il-request@... with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail linux-il-request@...


Gmane