News: 0001507544

  ARM Give a man a fire and he's warm for a day, but set fire to him and he's warm for the rest of his life (Terry Pratchett, Jingo)

Nice File Performance Optimizations Coming With Linux 6.13

([Linux Storage] 3 Hours Ago VFS File Pull)


In addition to the pull requests managed by Microsoft engineer Christian Brauner for [1]VFS untorn writes for atomic writes with XFS and EXT4, [2]Tmpfs case insensitive file/folder support , [3]new Rust file abstractions , and [4]the renewed multi-grain timestamps work , another interesting Linux 6.13 pull submitted by Brauner revolves around VFS file enhancements.

The VFS file updates for Linux 6.13 include a new reference counting mechanism for files, a new fast path, other new optimizations, and other clean-ups. Exciting me though always comes down to the performance improvements:

- Introduce a new reference counting mechanism for files.

...

This has been tested by various people and it gives consistent improvement up to 3-5% on workloads with loads of threads.

- Add a fastpath for find_next_zero_bit(). Skip 2-levels searching via find_next_zero_bit() when there is a free slot in the word that contains the next fd. This improves pts/blogbench-1.1.0 read by 8% and write by 4% on Intel ICX 160.

- Conditionally clear full_fds_bits since it's very likely that a bit in full_fds_bits has been cleared during __clear_open_fds(). This improves pts/blogbench-1.1.0 read up to 13%, and write up to 5% on Intel ICX 160.

Some nice performance gains, especially the latter two with the [5]BlogBench benchmark that in turn should be easily reproducible.

More details on the VFS file improvements via [6]this pull that has since been merged.

I look forward to beginning some Linux 6.13 kernel benchmarking as soon as the merge window settles down next week.



[1] https://www.phoronix.com/news/Linux-6.13-VFS-Untorn-Writes

[2] https://www.phoronix.com/news/Linux-6.13-Tmpfs-Case-Folding

[3] https://www.phoronix.com/news/Linux-6.13-Rust-File-Abstract

[4] https://www.phoronix.com/news/Linux-6.13-Multigrain-Timestamp

[5] https://openbenchmarking.org/test/pts/blogbench

[6] https://lore.kernel.org/lkml/20241115-vfs-file-f2297d7c58ee@brauner/



phoronix

We the unwilling, led by the ungrateful, are doing the impossible.
We've done so much, for so long, with so little,
that we are now qualified to do something with nothing.