Announcement

Collapse
No announcement yet.

OpenZFS 2.2 Released With Block Cloning, Linux Container Support & Better Performance

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • OpenZFS 2.2 Released With Block Cloning, Linux Container Support & Better Performance

    Phoronix: OpenZFS 2.2 Released With Block Cloning, Linux Container Support & Better Performance

    OpenZFS 2.2 was promoted to stable today as the latest major update to this open-source ZFS file-system implementation for Linux and FreeBSD systems. With OpenZFS 2.2 comes many exciting new features, performance improvements, and other enhancements for this evolution of open-source ZFS...

    Phoronix, Linux Hardware Reviews, Linux hardware benchmarks, Linux server benchmarks, Linux benchmarking, Desktop Linux, Linux performance, Open Source graphics, Linux How To, Ubuntu benchmarks, Ubuntu hardware, Phoronix Test Suite

  • #2
    Last time I compared BTRFS against OpenZFS I concluded NVME performance was absolutely decimated with OpenZFS. Is this still an issue with this release?

    Maybe we could find out if Michael did a mass filesystem benchmark with NVME n HDD using latest kernel

    Edit: see this for details https://www.phoronix.com/forums/foru...50#post1415150
    Last edited by Kjell; 13 October 2023, 03:01 PM.

    Comment


    • #3
      Michael

      Typos

      "for healping corrupted" should be "for helping corrupted"

      "OpenZFS 2.2 also [] BLAKE3 check-summing that is much faster than the likes of SHA-256 and SHA-512." missing word. Maybe "also supports BLAKE3"?

      "on 16 to 17 October" probably "on October 16th to 17th"



      Comment


      • #4
        Originally posted by Kjell View Post
        Last time I compared BTRFS against OpenZFS I concluded NVME performance was absolutely decimated with OpenZFS. Is this still an issue with this release?

        Maybe we could find out if Michael did a mass filesystem benchmark with NVME n HDD using latest kernel
        Well, that'd be hard to do with how Phoronix benchmarks things. 99.9999% of the time, Michael/Phoronix uses the default settings and you have to customize the heck out of OpenZFS pools and datasets to get better performance out of it since its default settings are primarily geared towards generic data safety and what should work for everyone and not necessarily the best performance for everyone.

        Comment


        • #5
          Originally posted by Kjell View Post
          Last time I compared BTRFS against OpenZFS I concluded NVME performance was absolutely decimated with OpenZFS. Is this still an issue with this release?
          How many years ago was that?

          There were several pessimisations and slow-paths through the ZFS I/O path that were only discovered with pools on NVMe ... and fixed over the past several years. I believe these were all resolved prior to OpenZFS 2.0, but don't quote me on that. I haven't really kept up with the NVMe-related changes, other than to notice there's been a lot of work done in that area.

          Comment


          • #6
            Update

            NVME performance related issues with OpenZFS are still not resolved

            Here's relevant issue report and progress updates:
            Originally posted by stompro

            Directio support bypasses the ARC since that can be a big performance drag when using fast NVMe storage. The extra memory copying slows things down. It is faster to always get the data from the drives.
            Last edited by Kjell; 13 October 2023, 03:02 PM.

            Comment


            • #7
              So, will OpenZFS 2.2 implement reflinks?

              Comment


              • #8
                Can't it be upstreamed into the Linux kernel instead?
                just like they did for the new ntfs driver.

                Comment


                • #9
                  - Added block cloning mechanism that allows to create a copy of a file or its part without duplicating data, using in the second copy references to already existing data blocks of the source file without actually copying them. If changes are made to the source file or its copies, blocks are copied and changes are made to the created copies (copy-on-write mode at the file level). The reflink operation is implemented on the basis of the cloning mechanism, which can be used for automatic creation of clones in various copy utilities, for example, in new versions of /bin/cp in Linux.

                  - Added support for technologies used for container isolation in Linux, such as the renameat system call, FS overlayfs, mapping user IDs on mount, and delegating namespaces for containers.

                  - A log of errors detected during checksum (scrub) operations has been implemented. When the "zpool status" command is executed, information about all FSs, snapshots and clones affected by the corrupted block is displayed. You can use the "zpool scrub -e" command to attempt a quick recovery of known corrupted blocks.

                  - Added the ability to use the BLAKE3 cryptographic hash function for checksums, which is notable for its very high hash computation performance (three times faster than Edon-R and significantly faster than sha256 and sha512) while providing SHA-3-level reliability.

                  - The "zfs receive -c" operation is implemented, which can be used to recover corrupted data (not metadata) in FSs, snapshots and clones, in cases where there is a replicated backup previously saved with the "zfs send" command.

                  - Added support for programmatically setting and reading properties for individual vdev virtual disks.

                  - Added the ability to bind arbitrary custom properties to vdev and zpool, similar to custom properties for zfs dataset.

                  - Improved the implementation of the ARC (Adaptive Replacement Cache), which improves the performance of read operations. ARC now better adapts to high loads and minimizes the need to manually optimize settings.

                  - Added support for hardware-accelerated SHA2 checksum calculation mechanisms.

                  - Edon-R checksum implementation rewritten and optimized.

                  - When using the zstd algorithm for data compression, faster detection of situations in which compression is pointless (data cannot be compressed).

                  - Improvements have been made to the Prefetch mechanism, which speeds up operation during intensive I/O.

                  - A number of general optimizations were introduced to improve performance.​

                  Comment


                  • #10
                    Originally posted by MastaG View Post
                    Can't it be upstreamed into the Linux kernel instead?
                    just like they did for the new ntfs driver.
                    No, ZFS' license is incompatible with the GPL.

                    Comment

                    Working...
                    X