which earn me advertising fees or commissions.
As an Amazon Associate I earn from qualifying purchases.
Real World Throughput for RAID-0 vs RAID-4 vs RAID-5
Related: bandwidth, diglloydTools, IntegrityChecker, Other World Computing, OWC Thunderbay, RAID, RAID-0, RAID-4, RAID-5, storage, Thunderbolt, video
But does it matter for real computing?
Understood properly, a 4-drive RAID-4 or RAID-5 is essentially a 3-drive RAID-0 stripe, plus parity.
So a perfect result would be equivalent performance to a 3-drive RAID-0 stripe.
One ultra-efficient threaded application whose speed could be degraded by CPU usage of RAID-5 and RAID-4 is diglloydTools IntegrityChecker: with high data rates, RAID-4 or RAID-5 could compete for CPU cycles against the hashing computations.
MacBook Pro and MacBook Air
iMac, Mac Pro, MacMini, more!
The example below is also an artificial worst case: in real life files are generally not huge 32GB files (as here), and thus highly efficient to process, but a mix of many far smaller files. With many and smaller files, various other overheads become substantial relative to processing one huge file.
The graph below shows:
- RAID-4 (dedicated parity drive) is definitely faster than RAID-5 (distributed parity), at least on SSDs.
- RAID-4 as implemented by SoftRAID 5 is impressively efficient, delivering performance all but identical to a 3-drive RAID-0 stripe.
One cannot ask for better RAID-4 results than this. Moreover, these data rates far beyond what most programs can even begin to utilize.
Real world computing always involves some useful computation (not just reading or writing files). While the 4-drive RAID-0 stripe is 12% faster for hashing than the RAID-4, rare indeed are the computing tasks that can process over a gigabyte of data per second. Usage realities intrude: better to have fault tolerance at data rates that measure lower but have no significant impact on real world tasks.
disktester create-files --num-files 1 --file-size 32G
4 drives used for RAID-4 or RAID-5 and 3 or 4 drives for RAID-0 stripe