The latest Btrfs async buffered write patch, which is currently queued in the Btrfs for-next Git repository, is expected to be merged in Linux 6.1.
The Btrfs Asynchronous Buffered Write Patch email describes the patch:
This patch series addsSupport for asynchronous buffered writes when using both btrfs and io. Currently io-uring only supports buffered writes in the slow path (for btrfs), with this patch series buffered writes in the fast path are now supported.
According to foreign media Phoronix: Meta (Facebook) engineer Stefan Roesch has been working on a patch to add support for asynchronous buffered writes for Btrfs and IO_uring. The benchmark results for this work are impressive:
Roesch commented on the performance results:
For an io depth of 1, the new patch more than doubles the throughput (compared to the existing behavior, where buffered writes are handled by the io-worker process), and the latency is also greatly reduced.
To achieve the same or better performance with existing code, an io depth of 4 would be required, and increasing the io depth further would not bring much improvement.
Before the Linux 6.1 merge window opened in early October, a bunch of optimization patches already existed in Kdave’s for-next Btrfs branch, the Btrfs asynchronous buffered write patch series described in this article being the main feature.
about For more information on the Btrfs asynchronous buffered write patch, see the relevant kernelmail.
#Linux #welcomes #Btrfs #asynchronous #buffer #write #patch #double #throughput