Newest Linux Optimizations Can Achieve 10M IOPS Per-Core With IO_uring

Written by Michael Larabel in Linux Storage on 25 October 2021 at 02:27 PM EDT. 65 Comments
LINUX STORAGE
Just one week ago Linux block subsystem maintainer Jens Axboe was optimizing the kernel to get 8 million IOPS on a single CPU core. He progressed the week hitting around ~8.9M IOPS per-core and began to think he was hitting the hardware limits and running out of possible optimizations. However, this week he is kicking things off by managing to hit 10 million IOPS!

Jens Axboe shared that today he's achieved 10M IOPS off one physical CPU core with his latest Linux kernel patches.

The testing is still done from the same development system of his, an AMD Ryzen 9 5950X with dual Intel P5800X Gen2 Optane solid-state drives.

These optimizations today were primarily within the kernel's block / NVMe / IO_uring code but also some touching the memory management code. All of these optimizations he has been pursuing for achieving the best possible per-core I/O performance can be found via linux-block's perf-wip branch. Many if not all of these performance optimization patches should be landing for the Linux 5.16 cycle.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week