HDD/SSD Performance With MDADM RAID, BCache On Linux 4.14

Written by Michael Larabel in Storage on 26 September 2017 at 09:51 AM EDT. Page 1 of 4. 26 Comments.

It's been one year since last testing BCache as a means in the Linux kernel's block layer to allow an SSD to serve as a cache for a larger but slower rotational hard drive. So I have carried out some fresh benchmarks using the Linux 4.14 Git kernel to provide not only fresh benchmarks of BCache but also MDADM SSD RAID on Linux and some other fresh SSD/HDD benchmarks.

Using the 2 x Xeon Gold 6138 + Tyan GT24E-B7106 1U server I ran some fresh Linux storage tests using four different storage devices to provide a modern look at the I/O performance with this newest kernel. The drives used for testing included a:

- One 256GB Samsung 850 PRO SATA 3.0 solid-state drive, the fastest drive in the system at the moment.

- One 2TB Seagate ST2000DM006-2DM1 HDD. This Seagate Barracuda hard drive supports SATA 3.0, 7200RPM, and a 64MB buffer. It's a standard, sub-$100 high capacity HDD to provide some reference for BCache.

- Two Toshiba/OCZ TR150 SATA 3.0 SSDs.

With that combination of four HDD/SSDs, the following tests were done using Linux 4.14 Git atop Debian 9.2 Stretch:

- The Samsung 850 PRO as a standalone drive using EXT4 with the default mount options.

- The Seagate ST2000DM006-2DM1 as a standalone drive using EXT4 with the default mount options.

- The TR-150 SSD as a standalone drive using EXT4 with the default mount options.

- The two TR-150 SSDs in a RAID0 array using MDADM with EXT4.

- The two TR-150 SSDs in a RAID1 array using MDADM with EXT4.

- The ST2000DM006-2DM1 HDD as the primary device and one TR-150 as the caching device with BCache in the default writethrough mode. The writethrough mode is considered the most secure from a data retention perspective and is where the data is copied to both devices at the same time.

- The ST2000DM006-2DM1 HDD as the primary device and one TR-150 as the caching device with BCache in the writeback mode. Writeback is BCache's highest performing mode where data is written first to the SSD and then copied to the backing device (HDD) asynchronously.

- The ST2000DM006-2DM1 HDD as the primary device and one TR-150 as the caching device with BCache in the writearound mode. In writearound mode, data is written directly to the HDD and not written to the SSD and is basically only read-only caching and designed to minimize writes to the flash-based storage.

EXT4 was used throughout all the tests. If there is sufficient interest I will repeat the tests with XFS and (native RAID) Btrfs in a future article. The goal of this article is mostly to provide a fresh look at the Linux HDD/storage performance options and now BCache would compare to a RAID setup, etc.

All of these Linux I/O benchmarks were carried out in a fully-automated and reproducible manner using the Phoronix Test Suite benchmarking software.


Related Articles