Btrfs Just Got Dramatically Faster — and Linux 6.12 to 7.0 Benchmarks Prove It

Benchmarks spanning Linux 6.12 through 7.0 reveal substantial Btrfs filesystem performance gains across compilation, database, and I/O workloads. Sustained kernel development targeting copy-on-write overhead, extent allocation, and metadata handling is narrowing the gap with simpler filesystems.
Btrfs Just Got Dramatically Faster — and Linux 6.12 to 7.0 Benchmarks Prove It
Written by Juan Vasquez

Something remarkable happened to Btrfs between Linux 6.12 and Linux 7.0. The copy-on-write filesystem — long respected for its snapshot capabilities and data integrity features but sometimes criticized for performance inconsistency — posted throughput gains so significant they demand attention from anyone managing Linux storage at scale.

According to extensive benchmarking conducted by Phoronix, Btrfs performance improved substantially across multiple workloads when comparing Linux kernel 6.12 stable to the Linux 7.0 development builds. The results span compilations, database operations, synthetic I/O stress tests, and real-world application benchmarks — and they tell a consistent story of a filesystem that’s been receiving serious engineering investment.

Michael Larabel, founder and principal author at Phoronix, ran the benchmarks on an Intel Core Ultra 9 285K “Arrow Lake” system equipped with a Samsung 990 Pro 2TB NVMe SSD. The test methodology covered kernel versions 6.12, 6.13, 6.14, 6.15, and 7.0 (the latter built from the early development cycle following Linus Torvalds’s decision to bump the version number). Every kernel was tested with the same Btrfs configuration on the same hardware, isolating filesystem and kernel-level changes as the primary variables.

The numbers are striking.

Where the Gains Show Up — and How Big They Are

In the Compilebench benchmark, which measures filesystem performance under workloads that mimic kernel compilation — creating, reading, and compiling large numbers of small files — Btrfs showed marked improvement. The “Initial Create” phase, which stresses metadata-heavy write operations, got noticeably faster from 6.12 through the 7.0 cycle. Read performance during the compile simulation also tightened up, with latency reductions that would matter on build servers processing hundreds of compile jobs daily.

The SQLite benchmark is where things get particularly interesting for database administrators and application developers. SQLite’s single-file database design makes it sensitive to filesystem allocation behavior, journaling overhead, and fsync performance. Across the kernel progression from 6.12 to 7.0, Btrfs delivered measurable throughput improvements on SQLite insertions and transactions. This isn’t a trivial workload — SQLite is embedded in everything from Android phones to Firefox to countless server-side applications.

Dbench, which simulates Samba-style file server workloads with multiple concurrent clients, showed Btrfs scaling better under load as the kernel versions advanced. The filesystem handled higher client counts with less performance degradation, suggesting improvements in lock contention and I/O scheduling within the Btrfs codebase.

But it wasn’t universally positive. Some benchmarks showed only marginal changes. A few showed slight regressions at specific kernel versions before recovering in subsequent releases. This is normal kernel development behavior — patches land, interactions emerge, fixes follow. The overall trajectory, though, pointed decisively upward.

Phoronix also ran the FS-Mark benchmark, which measures the rate of file creation under various conditions including synchronous writes and subdirectory scaling. Btrfs posted clear gains here, particularly in the multi-threaded, multi-directory configurations that stress the filesystem’s ability to handle parallel metadata updates. For workloads like container orchestration, CI/CD pipelines, and mail servers — all of which generate enormous numbers of small files — this matters.

The IOzone results added another dimension. Sequential read and write throughput remained largely stable (already close to the NVMe device’s limits), but random I/O patterns showed improvement. Random writes on Btrfs, historically an area where the filesystem could stumble compared to ext4 or XFS, tightened the gap.

So what’s driving these gains?

Under the Hood: What Changed in the Kernel

The Btrfs subsystem has been one of the more active areas of kernel development over the past several release cycles. David Sterba, the lead Btrfs maintainer at SUSE, has overseen a steady stream of patches targeting performance, code cleanup, and reliability. The work isn’t glamorous. It’s the kind of sustained engineering — reducing lock contention, optimizing extent allocation, improving delayed reference handling, tightening the I/O submission paths — that doesn’t generate headlines but compounds over time.

Linux 6.13 brought improvements to Btrfs’s handling of extent tree operations and some RAID-related fixes. Linux 6.14 continued with send/receive performance work and additional cleanup of the space accounting code. By 6.15, which saw significant VFS-level changes across the kernel, Btrfs benefited from both its own subsystem patches and broader kernel infrastructure improvements in the block layer and memory management.

The jump to 7.0 carried additional Btrfs patches, though the version bump itself was cosmetic — Torvalds has historically incremented the major version number when minor version numbers get “uncomfortably large,” and 6.x had been running since 2022. The version change carried no special technical significance for Btrfs or any other subsystem. But the cumulative effect of five kernel releases’ worth of Btrfs optimization was clearly visible in the benchmark data.

One area of particular focus has been reducing the overhead of Btrfs’s copy-on-write mechanism during heavy write workloads. COW is fundamental to how Btrfs provides snapshots, checksumming, and self-healing capabilities, but it introduces write amplification and metadata overhead that simpler filesystems don’t carry. Recent patches have targeted the efficiency of COW operations specifically, reducing unnecessary allocations and improving the batching of metadata updates.

Extent allocation improvements also played a role. Btrfs’s allocator determines where on disk (or SSD) new data blocks are placed, and suboptimal allocation can cause fragmentation, increased seek times on rotational media, and reduced write throughput on flash storage. Patches across the 6.13–7.0 window refined how Btrfs selects block groups and allocates extents within them.

There’s also been ongoing work on the zoned storage support within Btrfs, which is increasingly relevant as the industry moves toward zoned namespace (ZNS) SSDs and shingled magnetic recording (SMR) hard drives. While the Phoronix benchmarks were conducted on a conventional NVMe SSD, the architectural changes required for zoned storage support have side benefits for conventional devices — cleaner I/O submission paths, better sequential write patterns, and more predictable allocation behavior.

And the broader kernel changes help too. The block layer’s multi-queue I/O scheduling, improvements to the page cache, and VFS-level optimizations all contribute to filesystem performance even when the filesystem code itself hasn’t changed. Btrfs, being more complex than ext4 or XFS in its on-disk format and runtime behavior, tends to benefit disproportionately from reductions in kernel overhead.

For enterprise users, these results carry real implications. Btrfs has been the default filesystem on openSUSE and SUSE Linux Enterprise for years. Fedora adopted it as the default for desktop installations starting with Fedora 33 in 2020. Facebook (now Meta) has been one of the largest production users of Btrfs, running it across significant portions of its server fleet and contributing engineering resources back to the kernel. Synology uses Btrfs in its NAS products. The filesystem’s combination of snapshots, compression, checksumming, and send/receive makes it attractive for backup systems, development environments, and any workload where data integrity and flexible volume management matter.

But performance has always been the counterargument. “Just use XFS” or “just use ext4” has been standard advice for workloads where raw throughput and low latency are paramount. These benchmarks suggest that advice needs updating — or at least qualifying. Btrfs on Linux 7.0 isn’t just catching up. In some workloads, it’s competitive with or ahead of where ext4 was two kernel versions ago.

What This Means Going Forward

The trajectory matters more than any single benchmark number. Five consecutive kernel releases showing consistent Btrfs improvement indicates sustained maintainer focus and upstream support. This isn’t a one-time optimization that happened to land in a single release. It’s a pattern.

For organizations evaluating filesystem choices for new deployments — particularly on NVMe storage — the performance penalty historically associated with choosing Btrfs over simpler alternatives has narrowed considerably. The features Btrfs provides (transparent compression with zstd, instant snapshots, built-in RAID, online defragmentation, send/receive for incremental backups) come at a smaller performance cost than they did even a year ago.

That said, Btrfs still has areas where caution is warranted. Its RAID 5/6 implementation remains experimental and is not recommended for production use. Fragmentation on heavily modified large files (like virtual machine images or large databases) can still be problematic without regular maintenance. And the filesystem’s complexity means that recovery from catastrophic failures, while possible, requires more specialized knowledge than ext4 recovery.

None of that negates the benchmark story. Btrfs is getting faster, release after release, in a measurable and reproducible way. The Phoronix testing provides the kind of longitudinal data that filesystem performance discussions too often lack — not just “is it fast” but “is it getting faster, and how quickly.”

For Linux storage engineers, kernel developers, and infrastructure architects, the message is clear: Btrfs in 2025 is not the Btrfs of 2020. And if the current development velocity holds, the gap will only continue to close.

Subscribe for Updates

DevNews Newsletter

The DevNews Email Newsletter is essential for software developers, web developers, programmers, and tech decision-makers. Perfect for professionals driving innovation and building the future of tech.

By signing up for our newsletter you agree to receive content related to ientry.com / webpronews.com and our affiliate partners. For additional information refer to our terms of service.

Notice an error?

Help us improve our content by reporting any issues you find.

Get the WebProNews newsletter delivered to your inbox

Get the free daily newsletter read by decision makers

Subscribe
Advertise with Us

Ready to get started?

Get our media kit

Advertise with Us