RAID-5 Hardware and Software Methods Compared

Measured CPU Utilization

A CPU usage of 1 means that both CPU cores are at 100%.

My first reaction was that there was something wrong with the data collection. I use Splunk Enterprise to collect OS performance data. It occured to me that utilization might be reported differently between Linux and Windows add-ons. I tested. The scale is the same. This is actual CPU utilization recorded during testing.

I should note that the testing utilities themselves (fio and DiskSpd) collect and report CPU utilization. Compared to actual CPU utilization, the numbers collected by fio were inaccurate. Instead of depending on either test software, I measured CPU utilization independently. No other processes were using significant resources on the computer during testing.

Ubuntu used more CPU than Windows to perform I/O in all cases. Sometimes, Ubuntu used a lot more CPU. For example, even when using hardware RAID, Ubuntu used 27.3 times as much CPU as did Windows during sequential reads. You will likely choose an OS to fit a particular application, and I/O-related CPU utilization might not be a criterion for choosing your OS. Keep in mind, however, that sequential I/O and small random I/O used nearly or more than a whole 3.5 GHz late-generation CPU core under Ubuntu, whereas Windows used less than 12% of one core in the worst case.

Ubuntu hardware RAID used more CPU than Ubuntu LVM for all write patterns. However, it also did a lot more writing, so the CPU utilized per megabyte is less for hardware than LVM.

In case you think there must be a correlation between the CPU usage and IOPS that would explain this discrepancy between operating systems, there isn’t. A summary of IOPS follows.

Leave a comment

Your email address will not be published. Required fields are marked *