Btrfs With Linux 5.10 Brings Some Sizable FSync Performance Improvements
The Btrfs file-system is seeing some promising additions with Linux 5.10.
Most notable are seeing performance improvements in the area of fsync. The Btrfs code for this next kernel version has less contention over the log mutex yielding a few percentage improvements in throughput but more significant latency reduction with multiple clients. There is also an optimization to skip unnecessary commits for link and rename yielding possible 6% throughput improvements and as much as 30% lower latency or even 75% lower latency for renames. Another change makes fast fsync wait only for the writeback and that can yield double digit throughput improvements.
Outside of these fsync performance optimizations there is also now Direct I/O implemented using the IOmap infrastructure. There is also new information exported by sysfs, various low-level file-system driver improvements, error handling improvements, and many fixes throughout.
More details on the notable Btrfs file-system changes for Linux 5.10 via the pull request.
Most notable are seeing performance improvements in the area of fsync. The Btrfs code for this next kernel version has less contention over the log mutex yielding a few percentage improvements in throughput but more significant latency reduction with multiple clients. There is also an optimization to skip unnecessary commits for link and rename yielding possible 6% throughput improvements and as much as 30% lower latency or even 75% lower latency for renames. Another change makes fast fsync wait only for the writeback and that can yield double digit throughput improvements.
Outside of these fsync performance optimizations there is also now Direct I/O implemented using the IOmap infrastructure. There is also new information exported by sysfs, various low-level file-system driver improvements, error handling improvements, and many fixes throughout.
More details on the notable Btrfs file-system changes for Linux 5.10 via the pull request.
22 Comments