A lot has been written concerning the advantages of Hardware VS Software RAID. In my musings I considered this. The new thing for the day is multi core processors. The biggest problem with software raid has been that it took CPU time away from the system. With multi core procs running at current speeds does this even out the playing field from a REAL WORLD cost/performance perspective? especially if you were counting on getting older technology (on the cheap) to do RAID.
Lets say I want to run RAID on a workstation MB with PCI-E and PCI-X slots. A dedicated PCI-E RAID controller is going to cost me BIG BUCKS. A PCI-X can be had some what cheaper but comes in 66Mhz=533MB/s, 100Mhz=800MB/s & 133 Mhz=1.06 GB/s bus speed flavors. REAL WORLD to me means what would a consumer reasonably spend on hardware RAID if he wanted to go that route(Personally I don't know but in general I will rely on the economic man theory--as little as possible). So in spending as little as possible to get the best effect in consideration of multicore processors to off load the CPU overhead -- Is software RAID more attractive under this senario? Anyone seen any benchmarks of software RAID under a multiprocessor senario? Any third party packages to assist in software RAID -SCSI.
I'm a bit confused by your question, but you seem to be asking if going to a dual-core CPU over a single-core CPU is cheaper than going to a dedicated RAID controller w/I/O processor vs. letting the CPU do it.
The going price for used MegaRAID i4 PCI bus 4xIDE connector cards is about $90. The price premium for a dual-core over a single-core CPU is similar or higher. Also, if the MB fails, the controller card and drives can just be moved to another PC and will work fine; if the MB fails when using an integrated controller, it may be hard to find another MB with the same controller chip, so the array data can be read.
You're esentially asking a question that boils down to using the right tool for the right job.
Would you use your personal 747 to get a letter to another city overnight? Yes, that plane will accomplish that task, but it's a lot less hassle and much more efficient to just let FedEx deliver it for you -- they're already set up for this kind of thing.
Same thing here.
The extra core might help out with software RAID-5, but that isn't really the right tool for the right job. A general purpose processor isn't designed to efficiently execute a simple bitwise task on the order of megabytes per second. For the XOR operation, you can't compete with transistor gates at the silicon level. A Xilinx FPGA will perform such an operation faster than the general purpose processor can do it, at 1/10th the cost, consume 1/10th the power, generate 1/10th the heat, and need 1/10th the support circuitry.
There are some jobs best left to the ASIC. This is one of them. This is why you have graphics cards with GPUs on them -- because they're designed to be more efficient at the graphics operations. Same reason why you have a PHY chip on the network card, an MPEG decoder chip in your DVD player, and an Alcatel ATM Link Layer chip in your DSL modem. All of these are tasks that could be done by a general purpose processor, but I doubt anyone wants to have to water cool their DVD player. 8O
Personally, when I upgrade my little LAMP server, I will be using software RAID 1. I simply cant afford even the cheapest HW raid controller, but can afford a 2 channel IDE controller, and need to build some fault tolerance into my system in addition to my backups. The performance hit isnt that big, its the recovery path that has me wishing for HW RAID.