1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Linux 3.10 Kernel Integrates BCache HDD/SSD Caching

Linux Kernel

Published on 09 May 2013 01:27 AM EDT
Written by Michael Larabel in Linux Kernel
11 Comments

After being in development for more than one year, BCache was finally merged on Wednesday into the mainline Linux kernel code-base. BCache serves as an SSD caching framework for Linux by offering write-through and write-back caching through a newly-exposed block device.

The block device driver pull was merged Wednesday afternoon. Arguably the most interesting block driver feature to be added to the Linux 3.10 kernel is BCache.

BCache comes down to being a Linux kernel block layer cache where one or more SSDs (or other fast storage devices) can act as a cache for slower rotating disk drives, in somewhat a similar manner to some of the "SSHD" hybrid drives now on the market. BCache is similar to the L2Arc feature exposed on Oracle's ZFS file-system, but with being at the block device level, it's file-system agnostic. BCache is targeting the caching of random reads and writes to the faster storage medium than sequential I/O.

Aside from the supported Linux 3.10 (and later) kernel, there's also user-space "bcache-tools" that are needed for creating the cache and backing devices. When BCache devices are formatted for use, they are then registered with the kernel through a sysfs file.

For more details on BCache itself, read the Linux kernel documentation and the BCache Wiki.

Benchmarks and trial experiences with BCache in the Linux 3.10 kernel when paring HDDs and SSDs will come in a future Phoronix article.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Articles & Reviews
  1. AMD FX-8320E Performance On Linux
  2. Linux Compiler Benchmarks Of LLVM Clang 3.5 vs. LLVM Clang 3.6-rc1
  3. Intel Broadwell HD Graphics 5500: Windows 8.1 vs. Linux
  4. Linux Benchmarks Of NVIDIA's Early 2015 GeForce Line-Up
  5. NVIDIA GeForce GTX 960: A Great $200 GPU For Linux Gamers
  6. Disk Encryption Tests On Fedora 21
Latest Linux News
  1. Intel Broadwell On Linux Has Working OpenCL 1.2, VP8 Video Acceleration
  2. GParted 0.21 Brings ReFS Detection, EXT4 For RHEL5, Reiser4 For Linux 3.x
  3. Wine Staging Update Has Better CUDA Support, Driver Testing Framework
  4. Nouveau In Linux 3.20 Will Have A Lot Of Code Cleaning
  5. Compare Your Linux System To The i7-5600U Broadwell X1 Carbon ThinkPad
  6. Debian 8.0 "Jessie" Installer RC1 Released
  7. Chromebook "Rush" With 64-bit Tegra SoC Support Lands In Coreboot
  8. 2015 X.Org Elections Get Underway For Board Members, SPI Merger
  9. Linux 3.19-rc6 Kernel Released: LInux 3.19 Final In Two Weeks
  10. Ubuntu's Mir Gains Server-Side Platform Probing
Most Viewed News This Week
  1. Windows 10 To Be A Free Upgrade: What Linux Users Need To Know
  2. Google Admin Encourages Trying Btrfs, Not ZFS On Linux
  3. TraceFS: The Newest Linux File-System
  4. My Initial Intel Broadwell Linux Experience With The ThinkPad X1 Carbon
  5. Keith Packard Leaves Intel's Linux Graphics Work
  6. Interstellar Marines On Linux With Catalyst: Bull S*#@
  7. NetworkManager Now Supports WiFi Power Savings
  8. Intel's Open-Source Graphics Team Poaches A Top Nouveau Driver Developer