Re: RAID5 performance
From: Juha Laiho (Juha.Laiho_at_iki.fi)
Date: 08/30/03
- Next message: Måns Rullgård: "Re: RAID5 performance"
- Previous message: Martin Marcher: "Pinnacle PCTV - no channel tunning"
- In reply to: Måns Rullgård: "RAID5 performance"
- Next in thread: Måns Rullgård: "Re: RAID5 performance"
- Reply: Måns Rullgård: "Re: RAID5 performance"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Sat, 30 Aug 2003 08:32:00 GMT
mru@users.sourceforge.net (=?iso-8859-1?q?M=E5ns_Rullg=E5rd?=) said:
>I just finished setting up a RAID5 array of four new Seagate IDE
>disks. To my surprise, the read speed of this array is only 28 MB/s,
>even though the individual disks report >40 MB/s, all as per hdparm
>-t. Is this what it's supposed to be like? I read in the
>Software-RAID-HOWTO that read performance of RAID5 would be similar to
>RAID0.
How do you have the disks attached? Do any two of the disks share
a common IDE channel (so, are any two disks attached to the same
IDE data cable)?
If you have two IDE disks sharing a channel, that'll be the most probable
reason for your performance issue, as IDE bus doesn't support concurrent
device access. So, when an access request is made to one drive on the bus,
there will be no other activity on the bus until that one request is
completed. Only after that it is possible to send an access request to
the other drive in the same bus.
Compared with SCSI, where number of outstanding requests is a feature
of the adapter as well as the attached devices. F.ex. it is possible to
send several separate read requests to a single disk without waiting
for the first request to return - and similarly for multiple devices.
This is what still makes SCSI superior to IDE. If you can arrange drives
so that you're not sharing IDE buses with devices that are accessed
concurrently, then the IDE solution should be ok as well.
As for performance, read performance for RAID5 should be just fine, and
write performance should be notoriously bad only if you do small random
writes. If your writes tend to be large (and optimally match the RAID
stripe size or multiple of that), then your write performance should
be very nice as well. This comes of the RAID5 design that data is stored
as stripes of some size, where the checksum is calculated across the
stripe. If you write a partial stripe, then it is first required that
the "old" stripe is read into memory, your modifications to the stripe
are applied, and the new checksum computed before writing back to disks.
Writing a full stripe at a time doesn't require reading the old data
from disks, so it's just calculating the checksum and writing the data.
--
Wolf a.k.a. Juha Laiho Espoo, Finland
(GC 3.0) GIT d- s+: a C++ ULSH++++$ P++@ L+++ E- W+$@ N++ !K w !O !M V
PS(+) PE Y+ PGP(+) t- 5 !X R !tv b+ !DI D G e+ h---- r+++ y++++
"...cancel my subscription to the resurrection!" (Jim Morrison)
- Next message: Måns Rullgård: "Re: RAID5 performance"
- Previous message: Martin Marcher: "Pinnacle PCTV - no channel tunning"
- In reply to: Måns Rullgård: "RAID5 performance"
- Next in thread: Måns Rullgård: "Re: RAID5 performance"
- Reply: Måns Rullgård: "Re: RAID5 performance"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|