Jump to content
  • Following Windows ReFS improvements, Linux getting F2FS, Btrfs, EXT4 performance boosts


    Karlston

    • 672 views
    • 3 minutes
     Share


    • 672 views
    • 3 minutes

    Microsoft has been gradually expanding support for ReFS (Resilient File System) in recent Windows 11 Insider builds. First noticed back in January, a hidden feature inside Dev build 25281 would allow users to install Windows 11 on a ReFS volume. The company has since added more ReFS-based features like "Dev Drive" VHD volumes. Microsoft also updated the underlying ReFS version to 3.10 in one of the recent Canary channel builds.

     

    While the use of ReFS on Windows grows, Linux on the other hand is also making some steady progress on some of its file systems. From some of the recent Linux kernel patches, it seems some of the most popular Linux file systems, Flash-Friendly File System (F2FS), B-Tree Filesystem (Btrfs), and fourth extended filesystem (EXT4), are getting significant performance boosts.

     

    For example, Btrfs is getting around a 10% performance boost on SATA SSDs. Perhaps the improvement on NVMe drives may even be higher:

     

    Always read in 64KiB block size The real blocksize of read starts at 64KiB, and ends at 512K. This already results a better performance even for the worst case:

     

    • With patchset: 404.81MiB/s
    • Without patchset: 369.30MiB/s

     

    Around 10% performance improvement on an SATA SSD.

     

    Moving on to EXT4, there are a number of optimizations in place:

     

    There are a number of major cleanups in ext4 this cycle:

     

    • The data=journal writepath has been significantly cleaned up and simplified, and reduces a large number of data=journal special cases by Jan Kara.
    • Ojaswin Muhoo has replaced linked list used to track extents that have been used for inode preallocation with a red-black tree in the multi-block allocator. This improves performance for workloads which do a large number of random allocating writes.
    • Thanks to Kemeng Shi for a lot of cleanup and bug fixes in the multi-block allocator.
    • Matthew wilcox has converted the code paths for reading and writing ext4 pages to use folios. * Jason Yan has continued to factor out ext4_fill_super() into smaller functions for improve ease of maintenance and comprehension.
    • Josh Triplett has created an uapi header for ext4 userspace API's.

     

    Finally, here are the improvements on F2FS:

     

    Enhancement:

     

    • support non-power-of-two zone size for zoned device
    • remove sharing the rb_entry structure in extent cache
    • refactor f2fs_gc to call checkpoint in urgent condition - support iopoll

     

    Overall, it looks like Linux kernel version 6.4 will be quite decent in terms of performance.

     

    Source: LKML (1) , (2) , (3) via Phoronix

     

     

    Following Windows ReFS improvements, Linux getting F2FS, Btrfs, EXT4 performance boosts


    User Feedback

    Recommended Comments

    There are no comments to display.



    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.
    Note: Your post will require moderator approval before it will be visible.

    Guest
    Add a comment...

    ×   Pasted as rich text.   Paste as plain text instead

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...