Does fake RAID offer any advantage over software RAID?

17,732

Solution 1

Generally speaking there is no significant performance difference at all between software RAID and fake RAID, as fake RAID is more-or-less software RAID anyway.

Any parity calcs (for RAID5 and similar) will be done in the CPU in either case (and I'd be more trusting of the OS to be efficient and well tested/stable/supported than the fake-RAID drivers especially for a cheap mobo/controller so you might find fake-RAID less speedy and less reliable), also any block reads needed in order to update parity blocks have to go over the controller to the OS in both cases.

Also, the multiple drive writes issue exists in either case - to write to a block on a two-drive RAID1 for instance means two writes by the OS to the controller with both software and fake RAID - with hardware RAID there is always just one write to the controller and it manages talking to the drives potentially in parallel rather than sequentially. With software/fake the writes may also be parallel, but it depends on the I/O controllers and drivers supporting this (it is more likely with software RAID if your drives are not all on the same controller, so again there is potential for fake RAID to actually be a little slower in that circumstance).

In general Fake RAID takes the bad bits of the software RAID (potential CPU hit and I/O latency because of it, inability to multiplex writes (depending on controller/drivers/OS) to save bus bandwidth, no hardware cache) with the bad bits of hardware RAID (vendor dependence and sometimes controller model dependence), and none of the advantages of either (the flexibility and potential machine portability of software RAID or the the OS independence, write efficiency, cache options and so on of hardware RAID). I (and many others) recommend it be avoided.

MINOR NOTE: My thoughts on driver efficiency/stability are OS independent - I'd trust the software RAID options in any of Linux/BSD/Windows/OSX/other, similarly more than the drivers for a cheap fake raid configuration (such as that provided by your motherboard).
ALSO NOTE: potential bugs in drivers and other problems listed above aside, fake RAID will still protect you from some drive failures, but I would suggest using software RAID instead.

Solution 2

FakeRAID stores the RAID container information in the hardware/firmware, so that if another OS comes along there's no need to tell it what containers exist. Software RAID stores the RAID container information within the drives, so that if the drives are moved to other hardware there's no need to tell it what containers exist.

Solution 3

I am a hardware engineer with a major vendor. Fake-RAID is the bane of my life, 80% of the disk replacements will need an outage to replace a broken disk because after replacement, the OS does not see the new disk. You then have to go to the BIOS and rebuild the volume. Normally you won't lose data, but it is a hassle and you will be working via a remote console.

If you have software RAID available, don't use fake-RAID - it works fine until something breaks. Get to learn your volume manager. Over the last 13 years I cannot recall anyone having an outage when a software mirrored disk breaks.

Solution 4

It offers a massive drawback: it is bound to the hardware raid controller. So if your raid card, or mainboard breaks, you lose your raid information.

The presumed advantage of "operating system independence" is not there, in my opinion, as the drivers still have to be installed to take advantage of it. In case of multiboot, you will be better off partitioning the different disks and using each operating system´s builtin capabilities.

Share:
17,732

Related videos on Youtube

maaartinus
Author by

maaartinus

Updated on September 17, 2022

Comments

  • maaartinus
    maaartinus almost 2 years

    Does a fake RAID controller do any useful work or is it just like a place where to store the parameters? I know that Linux offers much more flexibility than my poor on-board controller, but this is not important for me.

    Is there any performance advantage by using the fake RAID?

    • Admin
      Admin over 13 years
      I'm mainly interested, if it offers any performance advantage.
  • maaartinus
    maaartinus over 13 years
    This works as long as you assume that another OS means another Windows version. You need the drivers and they may not exists at all.
  • Ignacio Vazquez-Abrams
    Ignacio Vazquez-Abrams over 13 years
    Linux can read the container information from quite a few chipsets.
  • zymhan
    zymhan over 8 years
    And you can use dmraid -l to determine which implementations are supported by your OS.
  • mist
    mist over 7 years
    So Fake Raid is when I use SuperMicro's fake raid bios with Ctrl+I and setup the raid 5 and then use dmraid (that communicates with the bios (intel rste). A Software Raid is when I do AHCI in the bios and on linux use mdraid?
  • David Spillett
    David Spillett over 7 years
    @mist: I think so on the former, the latter will definitely be software RAID.