libuv Adds IO_uring Support For ~8x Throughput Boost

Written by Michael Larabel in Programming on 18 April 2023 at 10:28 AM EDT. 3 Comments
PROGRAMMING
Libuv as the cross-platform asynchronous I/O library that is used by the likes of Node.js, Julia, and other software packages now has support for making use of IO_uring on Linux.

As of today IO_uring support has been merged into libuv for async file operations around read / write / fsync / fdatasync / stat / fstat / lstat. Libuv will make use of IO_uring when running on a new enough Linux kernel otherwise will fallback to using its existing thread pool solution.

The commit mentions:
Performance looks great; an 8x increase in throughput has been observed.

Yes, you read that right as an 8x increase in throughput with the wonderful IO_uring.

libuv logo


This addresses a five year old request for IO_uring support with libuv.
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