Announcement

Collapse
No announcement yet.

Linux IO_uring Can Now Achieve Up To ~3.8M IOPS Per-Core

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

  • Linux IO_uring Can Now Achieve Up To ~3.8M IOPS Per-Core

    Phoronix: Linux IO_uring Can Now Achieve Up To ~3.8M IOPS Per-Core

    It was just last month when ~3.5M IOPS per-core was impressive with the code for Linux 5.15 to further push Linux's I/O limits. Now for code likely to be included in Linux 5.16 it's currently at 3.8M IOPS with a single tread...

    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
    That's really amazing, but I wonder if these kind of improvements can be seen also when running normal M.2 SSDs.
    Or maybe the desktop environments need to add some support for it too.
    I'm curios if game loading or swap could be helped by these improvements.
    I don't know any other normal task on computer that could be helped by improving the number of IOPS.

    Comment


    • #3
      Originally posted by Danny3 View Post
      I don't know any other normal task on computer that could be helped by improving the number of IOPS.
      Well, possibly - not necessarily - with those improvements a given number of I/O-Operations will take less CPU instructions than before which is good news for every task - even mobile, since less energy is consumed to get the same job done.

      This depends on whether those improvements cut off unnecessary instructions or just optimized the same amount of instructions in order to minimize stalling in the execution flow. Most likely it is a combination of both.

      Comment


      • #4
        Why not 5.15?

        Comment


        • #5
          Originally posted by Azrael5 View Post
          Why not 5.15?
          Because 5.15 merge window ended 3 weeks ago.

          Comment


          • #6
            Impressive number for sure , but on what type of CPU core exactly? Intel, AMD, Power, Z15, 6502, Z80, etc... that is rather important to know. Once that is sorted the clock speed may also be interesting, not to mention the I/O setup and RAM type/speed etc etc...

            http://www.dirtcellar.net

            Comment


            • #7
              Originally posted by waxhead View Post
              Impressive number for sure , but on what type of CPU core exactly? Intel, AMD, Power, Z15, 6502, Z80, etc... that is rather important to know. Once that is sorted the clock speed may also be interesting, not to mention the I/O setup and RAM type/speed etc etc...
              Unless it has changed in the past year, test pc specs.

              Comment


              • #8
                Originally posted by Danny3 View Post
                That's really amazing, but I wonder if these kind of improvements can be seen also when running normal M.2 SSDs.
                Or maybe the desktop environments need to add some support for it too.
                I'm curios if game loading or swap could be helped by these improvements.
                I don't know any other normal task on computer that could be helped by improving the number of IOPS.
                Keep in mind this is not your regular path, your code needs to make explicit use of io_uring.
                Regarding swap, that's already handled 100% by the kernel, so io_uring can't add any value there.

                Comment


                • #9
                  Originally posted by Danny3 View Post
                  I don't know any other normal task on computer that could be helped by improving the number of IOPS.
                  Anything webserver/backend/proxy related, where a significant proportion of the application time is spent waiting on database/http/tcp/ip/filesystem IO.

                  Canonical example is something like nginx or a torrent program.

                  Comment


                  • #10
                    Originally posted by mdedetrich View Post

                    Anything webserver/backend/proxy related, where a significant proportion of the application time is spent waiting on database/http/tcp/ip/filesystem IO.

                    Canonical example is something like nginx or a torrent program.
                    This is true, but the benefit for desktop users will be lower cpu utilization while using uring, rather than some higher traffic rates, as any modern desktop cpu will be able to outpace their disk or network bandwidth without uring. I think tools like ag/ripgrep would benefit from uring, but none are looking at it right now..

                    people should remember that io_uring is a mechanism to avoid unnecessary cpu usage (and application latency).

                    Comment

                    Working...
                    X