On Mon 27 Apr 2015 15:07:37 NZST +1200, Peter Simmonds wrote:

> My own logic with software vs hardware raid is that the Linux SW
> raid drivers may only possibly be written in C, whereas the firmware
> on a raid card is likely written in i386 assembly language and
> packed into a flash ROM. C, while it uses optimizations through the
> compiler, I would be guessing produces much fatter code than asm
> i386 would be.

Forget about your language thoughts here, you're in the wrong forest.
You need to distinguish 3 types of raid implementation (and discard
everything raid manufacturers' marketroidal spins spurt forth on theri
websites):

1) Hardware RAID. The data goes over the PCI bus only once, and is
distributed to the actual disks by a beefy computer on the raid card
with plenty of RAM and often battery backup (for that RAM). To the OS
the card appears as a single drive. You buy desktop computers for less
than the cost of one of those cards. If the card dies you buy a new one
to get your data back.

2) Software RAID. Data is duplicated by the main CPU and goes over the
PCI bus once for each disk (writing, reading if checksumming is needed
by your chosen RAID level). There is high flexibility in configuring the
disks, you don't have to use whole disks for RAID, you can use just one
partition. It doesn't even have to be the same partition on each disk
either. If the SATA controller dies you plug the disks into another box
and are back up running. Depending on the raid level you can get access
to the data by-passing the raid, in a crunch.

3) Fake RAID. This is combining the worst of 1) and 2). It's what you get
for 10 bucks extra on a SATA card, or free with your mobo. Promise
FastCrap(TM) springs to mind prominently (I don't think they've ever
made anything decent, but have infinite ways of weasle-wording their
rubbish into hardware RAID). You need a proprietory driver(!!) to be
able to use it. Your data flows the same way as in 2). If the card dies
you are close to f..inished. These are consumer "products".

Either spend the money or make do with Linux SW RAID. Don't fake it, or
don't whinge if you do.

The RAID checksumming consists of integer operations on modern CPUs. It
will be highly optimised (there is assembler on some parts of the Linux
kernel). You can of course just do a quick install and test whether it's
fast enough for you.

It also depends on what RAID level you're going for. You could also
upgrade from SW to HW RAID later. I use SW RAID 1 in all my desktops
because it means I don't have downtime, and it's possible to mirror
smaller with larger disks (not mirroring all of the larger disk, which
is intentional).

Volker

-- 
Volker Kuhlmann
http://volker.top.geek.nz/      Please do not CC list postings to me.
_______________________________________________
Linux-users mailing list
[email protected]
http://lists.canterbury.ac.nz/mailman/listinfo/linux-users

Reply via email to