A few days ago I set out to try out BCache on the Linux 4.1 kernel now that this caching feature has matured in the mainline Linux kernel for a while. BCache serves as a cache to the Linux kernel's block layer whereby a solid-state drive (or other faster drive) can serve as a cache to a larger-capacity, traditional rotating hard drive.
The purpose of BCache in creating this hybrid storage medium is obviously for performance reasons with caching frequently used data. While solid-state drive prices continue to be in a free fall and new 1TB+ capacity SSDs continue to be introduced, BCache should prove useful still in the near-term especially for those not wanting to put their faith in a single SSD.
For this testing of BCache on Linux 4.1, the primary storage device was a Seagate Barracuda 500GB SATA 3.0 HDD and the solid state drive to act as a cache was the Mushkin ECO2 SSD. This Mushkin SATA 3.0 SSD actually appears to be made by Toshiba as detected under Linux once connecting the drive.
With this BCache testing I benchmarked the SSD standalone, the Seagate HDD standalone, and then setup BCache across the two disks and tested the writethrough and writeback cache modes. Setting up BCache on Ubuntu 15.04 was easy to do so. For information on setting up BCache on modern Linux distributions, I'd recommend checking out the Arch Linux Wiki as was my primary source in trying out BCache along with the BCache site and Bcache for Ubuntu Server. The default setup settings were used and the EXT4 file-system was created freshly each time on the Bcache device.
All of the Linux disk benchmarks in this article were conducted via the open-source Phoronix Test Suite benchmarking software.