Async Buffered Reads Support Yielding Promising Results

Written by Michael Larabel in Linux Storage on 23 May 2020 at 03:40 PM EDT. 10 Comments
LINUX STORAGE
Linux I/O expert Jens Axboe who oversees the kernel's block layer and is employed by Facebook while working on IO_uring and other storage innovations has recently been working on async buffered reads support.

Axboe sent out his latest work on async buffered reads support to replace a less than ideal implementation currently for IO_uring. XFS, EXT4, and Btrfs are the file-systems initially supported by this async buffered reads but handling additional file-systems should be easily possible.

The results of this work are enticing as with a sample application doing 4G worth of random reads in 4K chunks off an EXT4 file-system, the real time to complete dropped from 12 seconds to 9 seconds. Or 73 seconds with the prior state of the kernel. But beyond shaving a few seconds off the run time compared to the current mainline state, the async buffered reads support with IO_uring dropped the CPU usage from about 82% to roughly 52%.

Those interested in Linux storage can read about this async buffered reads work via this kernel mailing list thread.

Update: The work is now queued in the Linux block tree ahead of the upcoming Linux 5.8 merge window.
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