Announcement

Collapse
No announcement yet.

IO_uring Will Be Even Faster With Linux 5.12

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

  • IO_uring Will Be Even Faster With Linux 5.12

    Phoronix: IO_uring Will Be Even Faster With Linux 5.12

    IO_uring has been one of the greatest Linux kernel innovations in recent times. IO_uring for more efficient asynchronous I/O has continued getting faster and introducing new features over the past two years and for the upcoming Linux 5.12 cycle will be even faster...

    http://www.phoronix.com/scan.php?pag...aster-IO_uring

  • #2
    Could this make gaming faster by loading resources faster ?
    Or could it improve in any way the performance of running a distro from a flash drive ?
    I have one of the fastest flash drives on the market, but booting distros from it still doesn't seem the same performance as booting them from the internal SSD even though its performance is comparable to the SSD and it's connected through USB 3.

    Anyway, really amazing performance improvement, congratulations and thank you very much!

    Comment


    • #3
      Originally posted by Danny3 View Post
      Could this make gaming faster by loading resources faster ?
      Or could it improve in any way the performance of running a distro from a flash drive ?
      I have one of the fastest flash drives on the market, but booting distros from it still doesn't seem the same performance as booting them from the internal SSD even though its performance is comparable to the SSD and it's connected through USB 3.

      Anyway, really amazing performance improvement, congratulations and thank you very much!
      Unlikely.
      As for your "fastest flash drive", what's the random I/O speed at low queue depths compared to the SSD?
      It quite likely is not nearly as fast.
      Last edited by xnor; 13 February 2021, 08:30 PM.

      Comment


      • #4
        Originally posted by xnor View Post

        Unlikely.
        As for your "fastest flash drive", what's the random I/O speed at low queue depths compared to the SSD?
        It quite likely is not nearly as fast.
        I really cannot remember this kind of information, but if you put it this way, I think both are very slow compared to their sequential speeds.
        Maybe yeah, the SSD's volume it's a few times bigger than the flash drive's and it's connected through M.2, so it was probably easier to improve its small files random speed, even though they both have the same size (256 GB).

        But who knows, little improvements in the kernel like this one and one day distros having the ability to load all their files from USB flash drive to RAM, when the size of RAM is plenty, things might change and we might be able to use an OS from a flash drive with almost the same performance as with an internal drive.

        Comment


        • #5
          Originally posted by Danny3 View Post
          I really cannot remember this kind of information, but if you put it this way, I think both are very slow compared to their sequential speeds.
          Of course, but that doesn't matter for your questions. What matters is the difference between the two drives.

          Originally posted by Danny3 View Post
          Maybe yeah, the SSD's volume it's a few times bigger than the flash drive's and it's connected through M.2, so it was probably easier to improve its small files random speed, even though they both have the same size (256 GB).
          The size is pretty irrelevant, the interface is not. The overhead of USB alone will result in lower performance, especially for many I/O requests.

          Originally posted by Danny3 View Post
          But who knows, little improvements in the kernel like this one and one day distros having the ability to load all their files from USB flash drive to RAM, when the size of RAM is plenty, things might change and we might be able to use an OS from a flash drive with almost the same performance as with an internal drive.
          No, IO_uring has nothing to do with this. IO_uring is e.g. supposed to improve performance over epoll in server applications with thousands of connections.

          What you're describing is called readahead. It's quite ancient but it has been removed in systemd 217 because it didn't result in big speedups and was unmaintained.

          Comment


          • #6
            Now only to wait for support in networking libraries of popular programming languages

            Comment


            • #7
              Originally posted by ptrwis View Post
              Now only to wait for support in networking libraries of popular programming languages
              I was thinking the same. Network attached storage could potentially benefit a lot.

              Comment


              • #8
                Originally posted by ptrwis View Post
                Now only to wait for support in networking libraries of popular programming languages
                It's already part of libev

                Comment


                • #9
                  Is it enabled by default?

                  Comment


                  • #10
                    And Linux got IO_uring support in version 5.1, and I/O_uring is what is generally called completion queues/ports, something that AmigaOS had. Linux is very late to the game with this feature. Windows already had it long ago too.

                    Comment

                    Working...
                    X