Thank you for purchasing through links and ads on this site.
OWC / MacSales.com...
diglloyd Deal Finder...
Buy other stuff at Amazon.com...
SSD upgrade that takes full advantage of APFS
OWC Garage Sale
Over 350 items ready to move!
Plus Largest Selection ever of Used, Refurb, and New Macs
ends in 31 hours

CPU Usage for RAID-0 vs RAID-4 or RAID-5

Last updated 2014-11-23 - Send Feedback
Related: Storage, Video, Thunderbay 4 Mini, storage, RAID, Thunderbolt
OWC Thunderbay Mini

Thunderbay Mini configurations start at about $379 without drives. Thunderbay Mini RAID-5 edition also available.

RAID-4 = striping with a dedicated parity drive
RAID-5 = striping with distributed parity

Both RAID-5 and RAID-4 consume significant CPU cycles during write operations in order to perform the parity calculations.

There is no such overhead during reads, which behave similarly to a RAID-0 stripe (no parity calculation).

  • With modern Intel Core i7 CPUs, I/O speed is minimally affected by dint of a fast CPU.
  • With relatively slow CPUs in older Macs, I/O speed can drop and CPU usage will increase in relative terms.
  • Relatively slow CPUs process data relatively slower also, so the need for very high I/O speeds is of less importance than it seems in the context of real world tasks that involve computing.

Does it matter? See Real World Throughput for RAID-0 vs RAID-4 vs RAID-5.

Deals Updated Daily at B&H Photo
View BEST Deals Right Now

CPU usage

As shown below, over a GB/sec* is being written to a 4-drive RAID-4 (SSDs)**. Note that this requires Thunderbolt 2, implying a relatively recent Mac model and CPU.

To write that 1+ G/sec requires about 1.3/2 virtual = 0.65 real CPU cores***. But a RAID-0 stripe is not overhead free; it requires about 0.2 CPU core. And there are other CPU cycles needed by the system to perform the I/O in general (e.g., the file system).

So taking the delta with RAID-0, the use of RAID-4 or RAID-5 at 1+ GB/sec means the use of ~ 1/2 real CPU core on a fast 2014 Intel Core i7.

* Activity Monitor generally displays erroneous speed figures (too high as can be seen) due to its sampling methodology.
** disktester fill-volume --xfer 128MB, 64K RAID stripe size, RAID-4
*** There are 4 real CPU cores on a MacBook Pro and iMac, and some Mac Pros, and 8 virtual cores (~useless). A display of 130% in CPU core terms means 1.3 virtual cores out of those 8, and 0.65 real cores out of 4 real cores.

Discussion continues below images.

~130% CPU Usage for RAID-4 or RAID-5 during intensive write
(during disktester fill-volume test)
~130% CPU Usage for RAID-4 or RAID-5 during intensive write
(during disktester fill-volume test)

Context and relevance

  • Since hard drives are much slower than SSDs, the CPU usage will be commensurately slower, since CPU usage is proportional to data rates.
  • The data rates are fast with SSDs; using CPU cycles for a short duration is far better than forcing an application to wait 2X or 3X as long (for hard drives), forcing the application to remain idle until the data is delivered.
  • Unless the CPUs are already fully utilized (rare), CPU usage by the SoftRAID driver has no appreciable impact.
  • Faster disk I/O means an application that needs it can get more work done faster. Choosing SSDs for such work is a huge gain over hard drives (when and where fast disk I/O really matters).

That said, the rare (and perhaps non-existent !) application that uses all CPU cores while simultaneously demanding a gigabyte per second of data might be better served by hardware RAID that can offload the computation. Or by using a Mac with 8/10/12 cores instead of 4 cores; see 2013 Mac Pro: 4 CPU Cores Can Constrain Your Workflow.

Does it matter? See Real World Throughput for RAID-0 vs RAID-4 vs RAID-5.

SSD upgrade that takes full advantage of APFS

diglloyd.com | Terms of Use | PRIVACY POLICY
Contact | About Lloyd Chambers | Consulting | Photo Tours
Mailing Lists | RSS Feeds | Twitter
Copyright © 2008-2017 diglloyd Inc, all rights reserved.
Display info: __RETINA_INFO_STATUS__