Benchmarking The Experimental Bcachefs File-System Against Btrfs, EXT4, F2FS, XFS & ZFS
With Bcachefs core development being done and the possibility of this file-system being mainlined soon, here are some fresh benchmarks of this file-system compared to Btrfs, EXT4, F2FS, XFS, and ZFS On Linux.
Bcachefs is the file-system born out of the Linux kernel's block cache code and has been worked on the past several years by developer Kent Overstreet. Our most recent benchmarking of Bcachefs was last year, so with the prospects of Bcachefs potentially being staged soon in the mainline Linux kernel, I ran some benchmarks using the latest kernel code for this next-generation file-system.
Those unfamiliar with this copy-on-write file-system can learn more at Bcachefs.org. The design features of this file-system are similar to ZFS/Btrfs and include native encryption, snapshots, compression, caching, multi-device/RAID support, and more. But even with all of its features, it aims to offer XFS/EXT4-like performance, which is something that can't generally be said for Btrfs.
Bcachefs in its current state was benchmarked against EXT4/XFS/Btrfs/F2FS/ZFS with each file-system being tested with its default mount options and done using an Intel Optane 900p 280GB NVMe solid-state drive. This was done from an AMD Ryzen Threadripper 2990WX system with ASUS ROG ZENITH EXTREME motherboard, 4 x 8GB DDR4-3200 memory, and running Ubuntu 19.04 but with moving to the Linux 5.2 mainline kernel and Kent's latest Bcachefs/Bcachefs-tools trees built as of last week.
Via the Phoronix Test Suite a wide range of storage benchmarks were carried out across these Linux file-system options. Once Bcachefs is mainlined, tests on multiple storage devices will be carried out.