geom_raid5 inclusion in HEAD?
bsd at fluffles.net
Tue Nov 6 06:57:00 PST 2007
I was wondering if and when the excellent geom_raid5 module created by
Arne Wörner would be committed to HEAD or releng_7. Right now there's
gvinum with RAID5 support and geom_raid3. The latter is nice but only
works with a 'strange' number of disks (3,5,9,17,33, etc) and has the
disadvantages associated with RAID3 (no parallel access; all disks are
involved in one single write operation), while gvinum offers poor RAID5
write performance (~20MB/s in my testings).
geom_raid5, on the other hand, offers excellent performance due to write
combining, that allows 2-phase requests to be converted into 1-phase
requests. This is achieved by waiting for contiguous requests and
splitting those into the 'full stripe', meaning: stripesize * (
number_of_disks - 1). This way, no parity information has to be read
from any disk since all required data is already in memory. In normal
english this means excellent sequential performance. In my own testings
i have achieved over 400MB/s of RAID5 write performance using a simple
"dd if=/dev/zero of=/dev/raid5/data bs=1m" of at least 10GB worth of
data. raidtest benchmarks show that geom_raid5 scales nicely with the
number of disks, though ofcourse RAID5's weak point is random write.
Considering this project has been around for quite a while, and sister
project FreeNAS has been using it for more than a year in their official
(stable) branch, i think it should become available in the official
FreeBSD distribution as well. I don't know who decides on this, but i
would like to get a discussion going on this matter.
Looking forward to any replies!
More information about the freebsd-current