Originally posted by: SleepWalkerX
Originally posted by: Nothinman
I found my answer when someone mentioned the fact that the raid that is installed is not technically a hardware raid and that performace on those drives are terrible. Which got me wondering why I installed Linux in the first place, because performance from the Mac machines to the server to the RAID was terrible. So I decided to test out what would happen if I transfered to a single disk. As it turns out, the raid performace is so bad that for my solution it warrants a hardware raid, and I will simply run windows off of it.
Software RAID shouldn't be any worse than a single drive, at least nothing noticable. If it is I would say something else is wrong in your setup too. Infact in lots of scenarios Linux software is faster than a hardware RAID controller.
That's what I thought.
Yep. That's right.
Some links:
http://linas.org/linux/raid.html
This one shows Linux software RAID vs Hardware RAID on the same controller. However I am told that it's a 3com controller known for lackluster performance.
http://spamaps.org/raidtests.php
When looking at the graphs entries that begin with HW are hardware and SW for software. SWEXT3 would be software raid on ext3.
Keep in mind that this benchmark is old. Peformance of software raid and file systems have improved.
Looking at the benchmarks with that software raid beat the hardware raid in every single instance. On especially favorable benchmarks the software raid outperformed the hardware raid by more then 200%.
There have been other benchmarks that I've seen and they've always shown software raid is faster.
The reason Linux software raid is faster is because of 2 things...
A: Linux MD (stuff in kernel responsable for software raid) is fantastic. Smart algorythms help. Laying out data by partition rather then abstract it with hardware has good performance advantages. (something about how the blocks are laid out. don't understand it myself).
B. The proccessors used to hardware raid are usually generic embedded items. They typically run around 200 or 400mhz. Unlike 3d cards they general purpose proccessors. Your 3000mhz Pentium 4 is much much more efficient and much much faster then those little things.
Nowadays it's much cheaper to spend the money on a computer with excessive amounts of proccessing power then it is to go buy a dedicated 'real' hardware raid. It used to be that servers would have their cpus heavily loaded so offloading I/O to seperate hardware made sense from a performance perspective. But nowadays cpus are very cheap and fast and getting a dual cpu box is cheaper then getting a single core + hardware raid.
The reason you still want hardware raid is features for other then speed. The hardware usually incorporates extra monitoring features and error correction/detection. It supports hotswapping. And things like that. It's simply more reliable and will help you protect your data and lower administration overhead. (generally speaking. Some stuff is just crap).
Also keep in mind that software raid has limited scalability. With the regular 32bit PCI bus it will run out of bandwidth after about 5 harddrives. (Of course with PCI express, however...)
Nowadays raid makers know this so they are starting to make fakeraid devices that incorporate some real hardware raid features. So it's become tricky to find 'real' hardware raid unless your going scsi.
This page is handy in my experiance..
http://linuxmafia.com/faq/Hardware/sata.html