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

"I'll bet you $5 USD (and these days, that's about a gadzillion Euros) that
this explains it."

- Linus