Bcachefs File System Exits Experimental Phase

Kent Overstreet announced the release of Bcachefs 1.38.6, marking the official transition of the project from experimental to stable development. With a decrease in reported issues and less severe bugs, the file system is now considered more reliable.

The release includes two packages: bcachefs-kernel-dkms, featuring a kernel module built using the DKMS system, and bcachefs-tools, offering a user space utility for file system operations such as creation, mounting, restoration, and verification. These packages are available for Debian, Ubuntu, Arch Linux, and soon expected for Fedora, openSUSE, and NixOS. The DKMS module supports Linux kernels starting from version 6.16.

Although version 1.38.6 may appear unremarkable in terms of disk format changes, the release introduces significant performance optimizations. Over 200 code changes were implemented to enhance btree structures, journaling, and file system maintenance. Noteworthy improvements include compressing transaction confirmation logic into 4KB of machine code, reducing lock contention when working with btree, and eliminating locks during journal state resets.

Testing on a server equipped with a 48-core AMD CPU demonstrated impressive throughput of 16.5 GB/sec in Bcachefs while running 48 dbench clients. Performance patches, expected in a future release, aim to boost dbench test results to 19 GB/sec with additional testing or potential disk format adjustments. When evaluated with fio, Bcachefs achieved 700 IOPS during random write operations on 4K blocks, showcasing its efficient handling of Copy-on-Write cycles with checksum validation and btree structure updates compared to XFS.

/Reports, release notes, official announcements.