Announcement

Collapse
No announcement yet.

ZFS On Linux Has Figured Out A Way To Restore SIMD Support On Linux 5.0+

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

  • ZFS On Linux Has Figured Out A Way To Restore SIMD Support On Linux 5.0+

    Phoronix: ZFS On Linux Has Figured Out A Way To Restore SIMD Support On Linux 5.0+

    Those running ZFS On Linux (ZoL) on post-5.0 (and pre-5.0 supported LTS releases) have seen big performance hits to the ZFS encryption performance in particular. That came due to upstream breaking an interface used by ZFS On Linux and admittedly not caring about ZoL due to it being an out-of-tree user. But now several kernel releases later, a workaround has been devised...

    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
    Speaking of I/O/filesystems, are there plans to benchmark bfq again after the recent 5.2 performance changes? Some people are claiming it should be preferable for SSDs now.

    The BFQ dev had said he was hoping SSDs would be best with BFQ on the next phoronix test here: https://www.youtube.com/watch?v=jWPSATyQ1RA
    Last edited by aphysically; 17 July 2019, 07:43 PM.

    Comment


    • #3
      Originally posted by phoronix View Post
      Phoronix: ZFS On Linux Has Figured Out A Way To Restore SIMD Support On Linux 5.0+

      Those running ZFS On Linux (ZoL) on post-5.0 (and pre-5.0 supported LTS releases) have seen big performance hits to the ZFS encryption performance in particular. That came due to upstream breaking an interface used by ZFS On Linux and admittedly not caring about ZoL due to it being an out-of-tree user. But now several kernel releases later, a workaround has been devised...

      http://www.phoronix.com/scan.php?pag...Restoring-SIMD
      AFAIK BTRFS uses SSE/AVX too, and possibly other kernel subsystems as well. Can someone summarise what is the specific issue that affects ZFS but is not a problem for the others?

      Comment


      • #4
        Originally posted by jacob View Post
        Can someone summarise what is the specific issue that affects ZFS but is not a problem for the others?
        The CDDL was created by Sun specifically to be GPLv2-incompatible and hence ZFS cannot use __kernel_fpu_{begin,end} as it exported as GPL only.

        There is one user of __kernel_fpu_begin() and before invoking it, it invokes preempt_disable(). So it could invoke kernel_fpu_begin() right away. The 32bit version of arch_efi_call_virt_setup() and...

        Comment


        • #5
          Originally posted by jacob View Post
          AFAIK BTRFS uses SSE/AVX too, and possibly other kernel subsystems as well. Can someone summarise what is the specific issue that affects ZFS but is not a problem for the others?
          1) License ZFS results in it not being mainline part.
          2) Even this work around is going to be trouble.


          PREEMPT_RT means the disabling preemption route is path to trouble.

          As Linux kernel comes more real-time able using any of these functions that need locking can come trouble.

          Comment


          • #6
            Originally posted by Space Heater View Post

            The CDDL was created by Sun specifically to be GPLv2-incompatible and hence ZFS cannot use __kernel_fpu_{begin,end} as it exported as GPL only.

            https://github.com/torvalds/linux/co...a24e3d5b8be205
            Thanks for the short and clear explanation. What is the situation on other CPU architectures like ARM or POWER, where the SIMD registers are distinct from regular FPU registers? Is ZFS optimised to use SIMD on these machines as well?

            Comment


            • #7
              Don't worry: kernel devs will soon hide even more functions under GPL and your f*ckery will never cease.

              Comment


              • #8
                Originally posted by birdie View Post
                Don't worry: kernel devs will soon hide even more functions under GPL and your f*ckery will never cease.
                That's exactly what I thought -- seems like ZoL is using an exploit that'll get patched up; not to mention having to disable preempt. I'm going to continue using the gpl exports patch.

                Comment


                • #9
                  hreindl

                  No one can read what you post.

                  All you do is spam our message boxes with "hreindl and -1 user have posted on your subscription: yada, yada, yada".

                  Comment


                  • #10
                    Originally posted by birdie View Post
                    Don't worry: kernel devs will soon hide even more functions under GPL and your f*ckery will never cease.
                    The kernel is released under the GPLv2. They are free to change whatever function that they want to be exported as GPL. This is widely known, and was known at the time that ZFS was released. Sun specifically made a license that was incompatible, just to spite the progress of Linux and hope that Sun/Solaris would become more popular. It didn't work out for them, obviously.

                    If anyone doesn't agree with the terms of Linux licensing, they are free to use something else (and there are several alternatives). The fact that even with all the alternatives people still want to use Linux and ZFS, it means that they see many advantages in Linux. Linux kernel under GPLv2 existed long before ZFS was open-sourced. If you want to participate with the entrenched standard, you have to follow their rules. So the onus is on ZFS to be made GPLv2-compatible. I can't see why so many people find this hard to understand.

                    Again, to repeat for everyone that seems to need to hear it multiple times; if you don't agree with how Linux works, DON'T USE IT. Why waste time coming here and bitching about it. Go use Windows, one of the BSD's, etc. Why make life harder for yourself??

                    Comment

                    Working...
                    X