Linux 5.15 I/O Can Achieve Up To ~3.5M IOPS Per-Core

Written by Michael Larabel in Hardware on 30 August 2021 at 03:00 PM EDT. 14 Comments
In addition to the block subsystem changes submitted for the Linux 5.15 merge window, Jens Axboe also sent in a separate pull request for this new kernel cycle to provide support for bio recycling. In turn this can enhance the Linux I/O limits by around 10%.

The feature pull request mailed out today adds support for bio recycling in order to quickly reuse the bio for high IOPS scenarios rather than having to go back through the slab allocator. This cache though only works for polled I/O scenarios due to not being IRQ safe. With less than 200 lines of new code, this bio recycling is wired up and support added to IO_uring for using this bio allocation cache.

Axboe noted in the bio recycling pull request, "It's good for almost a 10% improvement in performance, bumping our per-core IO limit from ~3.2M IOPS to ~3.5M IOPS."

The Linux I/O limits were stressed with IO_uring and making use of Intel Optane Gen2 storage with now being able to achieve 3.5M+ IOPS per-core.

A 10% improvement with the Linux 5.15 kernel is exciting by itself but it's also on top of many other optimizations in recent times. It was just last year when Axboe noted his use of Gen2 Optane memory for IO_uring work and at the time the speedy results he was pleased with were around ~2.58M IOPS. Now with the latest Linux kernel is up to around 3.5M IOPS,
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of 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 automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via

Popular News This Week