Top of the page

Intel Software RAID vs. Hardware RAID

This post will feature both a general overview of Intel software RAID vs. hardware RAID. The comparison will include performance numbers.

PROSCONS
No additional hardware requiredRAID levels are limited
Cheaper costNo dedicated cache
Very easy to useSlower performance
Lower overall system power consumptionCPU usage

The Intel RST RAID comes built-in with all Supermicro Intel-based motherboards and can be enabled in the BIOS by adjusting a single setting. It is limited to SATA drives only. This type of RAID is considered a software RAID because the RAID calculations are done on the CPU.

Hardware RAID uses a PCI-e Add-On Card and processes RAID calculations on the controllerâ„¢s dedicated processor. The workload is, therefore, offloaded from the motherboard CPU.

PROSCONS
Higher performanceMore expensive
Dedicated cache w/ protectionRequires Add-On Card
Dedicated processorRequires additional cables
More drive options w/ Tri-mode(SATA/SAS/NVMe)Additional power consumption

FIO performance numbers comparing Intel RST software RAID vs. Hardware RAID controller

FIO is a Linux based utility that simulates workload and provides bandwidth numbers for the storage portion of your system. It is highly granular and a number of parameters can be adjusted to simulate your specific workload. In this case, the FIO test was executed from a PXE booted OpenSuse 42.3 Live OS. Both software and hardware RAID arrays did not contain any data while the test was running.

  • RAID Level: RAID10
  • Drives used: 4x Samsung 960GB PM833 SSDs
  • Hardware RAID controller: LSI 9361-4i (SATA/SAS only, not Tri-mode)
  • FIO blocksize: 256k

Intel RST RAID10 Read/Write performance:

Run status group 0 (all jobs):

READ: io=111171MB, aggrb=1852.7MB/s, minb=1852.7MB/s, maxb=1852.7MB/s, mint=60008msec, maxt=60008msec

Run status group 0 (all jobs):

WRITE: io=56761MB, aggrb=968.4MB/s, minb=968.4MB/s, maxb=968.4MB/s, mint=60017msec, maxt=60017msec

fio command used:

fio --ioengine=libaio --name=io --rw=<read|write> --direct=1 --numjobs=1 --bs=256k --iodepth=64 --ramp_time=15 --runtime=60 --filename=/dev/md126

LSI 9361-4i Read/Write performance:

Run status group 0 (all jobs):

READ: io=129244MB, aggrb=2153.8MB/s, minb=2153.8MB/s, maxb=2153.8MB/s, mint=60010msec, maxt=60010msec

Run status group 0 (all jobs):

WRITE: io=60411MB, aggrb=1006.4MB/s, minb=1006.4MB/s, maxb=1006.4MB/s, mint=60030msec, maxt=60030msec

fio command used:

fio --ioengine=libaio --name=io --rw=<read|write> --direct=1 --numjobs=1 --bs=256k --iodepth=64 --ramp_time=15 --runtime=60 --filename=/dev/sda

As you can see, while the write performance is only slightly higher on hardware RAID at almost 4%, we see around a 14% increase in read performance.

In conclusion, whichever RAID option you choose will depend on a lot of different variables including price, PCI-e slot availability, use case, performance needs, workload type and more. Hopefully, this post will help you make an educated decision based on your unique environment and needs.

Intel Software RAID vs. Hardware RAID

This post will feature both a general overview of Intel software RAID vs. hardware RAID. The comparison will include performance numbers.

PROSCONS
No additional hardware requiredRAID levels are limited
Cheaper costNo dedicated cache
Very easy to useSlower performance
Lower overall system power consumptionCPU usage

The Intel RST RAID comes built-in with all Supermicro Intel-based motherboards and can be enabled in the BIOS by adjusting a single setting. It is limited to SATA drives only. This type of RAID is considered a software RAID because the RAID calculations are done on the CPU.

Hardware RAID uses a PCI-e Add-On Card and processes RAID calculations on the controllerâ„¢s dedicated processor. The workload is, therefore, offloaded from the motherboard CPU.

PROSCONS
Higher performanceMore expensive
Dedicated cache w/ protectionRequires Add-On Card
Dedicated processorRequires additional cables
More drive options w/ Tri-mode(SATA/SAS/NVMe)Additional power consumption

FIO performance numbers comparing Intel RST software RAID vs. Hardware RAID controller

FIO is a Linux based utility that simulates workload and provides bandwidth numbers for the storage portion of your system. It is highly granular and a number of parameters can be adjusted to simulate your specific workload. In this case, the FIO test was executed from a PXE booted OpenSuse 42.3 Live OS. Both software and hardware RAID arrays did not contain any data while the test was running.

  • RAID Level: RAID10
  • Drives used: 4x Samsung 960GB PM833 SSDs
  • Hardware RAID controller: LSI 9361-4i (SATA/SAS only, not Tri-mode)
  • FIO blocksize: 256k

Intel RST RAID10 Read/Write performance:

Run status group 0 (all jobs):

READ: io=111171MB, aggrb=1852.7MB/s, minb=1852.7MB/s, maxb=1852.7MB/s, mint=60008msec, maxt=60008msec

Run status group 0 (all jobs):

WRITE: io=56761MB, aggrb=968.4MB/s, minb=968.4MB/s, maxb=968.4MB/s, mint=60017msec, maxt=60017msec

fio command used:

fio --ioengine=libaio --name=io --rw=<read|write> --direct=1 --numjobs=1 --bs=256k --iodepth=64 --ramp_time=15 --runtime=60 --filename=/dev/md126

LSI 9361-4i Read/Write performance:

Run status group 0 (all jobs):

READ: io=129244MB, aggrb=2153.8MB/s, minb=2153.8MB/s, maxb=2153.8MB/s, mint=60010msec, maxt=60010msec

Run status group 0 (all jobs):

WRITE: io=60411MB, aggrb=1006.4MB/s, minb=1006.4MB/s, maxb=1006.4MB/s, mint=60030msec, maxt=60030msec

fio command used:

fio --ioengine=libaio --name=io --rw=<read|write> --direct=1 --numjobs=1 --bs=256k --iodepth=64 --ramp_time=15 --runtime=60 --filename=/dev/sda

As you can see, while the write performance is only slightly higher on hardware RAID at almost 4%, we see around a 14% increase in read performance.

In conclusion, whichever RAID option you choose will depend on a lot of different variables including price, PCI-e slot availability, use case, performance needs, workload type and more. Hopefully, this post will help you make an educated decision based on your unique environment and needs.