Linux Kernel To Get AIO Performance Improvements

Posted by Michael Larabel on December 04, 2012

The Linux Kernel A-synchronous I/O support has been receiving some performance improvements and clean-ups that should soon be merged to mainline.

Coming out recently have been a set of more than two dozen patches for the Linux AIO support that provides notable performance improvements. From the patch-set's author on the AIO mailing list, "The results in my testing are pretty impressive, particularly when an ioctx is being shared between multiple threads. In my crappy synthetic benchmark, with 4 threads submitting and one thread reaping completions, I saw overhead in the aio code go from ~50% (mostly ioctx lock contention) to low single digits. Performance with ioctx per thread improved too, but I'd have to rerun those benchmarks. The reason I've been focused on performance when the ioctx is shared is that for a fair number of real world completions, userspace needs the completions aggregated somehow - in practice people just end up implementing this aggregation in userspace today, but if it's done right we can do it much more efficiently in the kernel."

Yesterday there was a second version of these kernel AIO patches for enhancing the performance. It's possible we will see the a-synchronous I/O performance improvements merged into the Linux 3.8 kernel later this month if further revisions aren't deemed necessary that would stave off the merging to Linux 3.9. The AIO changes affect around one thousand lines of kernel code.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Intel Haswell HD Graphics 4600 vs. AMD Radeon Graphics On Linux
  2. Intel Haswell HD Graphics 4600 Performance On Ubuntu Linux
  3. Intel Core i7 4770K "Haswell" Benchmarks On Ubuntu Linux
  4. The First Experience Of Intel Haswell On Linux
Latest Software Articles
  1. Optimized Binaries Provide Great Benefits For Intel Haswell
  2. 11-Way Linux, BSD Platform Comparison
  3. SNA Acceleration Works Great For Intel Core i7 Haswell
  4. The Linux Evolution For Intel Haswell's Performance
Latest Linux News
  1. LLVM 3.3 Officially Released
  2. LLVM/Clang Now Uses Loop Vectorizer At New Levels
  3. Intel GPU Driver Tries To Rip Out FBDEV Support
  4. Coreboot Doing AMD USB 3.0, Q35 QEMU Emulation
  5. VP9 Codec Now Enabled By Default In Chrome
  6. openSUSE 13.1 M2 Plays On PulseAudio 4.0
  7. Debian 7.1 Rounds In Some Bug-Fixes
  8. Min / Max FPS Comes To Test Results
  9. Google Pushes More Mesa / Gallium3D Patches
  10. The Phoronix Migration Is Fully Complete
  11. Linux 3.10-rc6 Kernel Brings In More Fixes
Latest Forum Talk
  1. Google Pushes More Mesa / Gallium3D Patches
  2. Intel GPU Driver Tries To Rip Out FBDEV Support
  3. AMD Catalyst 13.6 Beta
  4. LLVM 3.3 Officially Released
  5. The Wayland Situation: Facts About X vs. Wayland
  6. VP9 Codec Now Enabled By Default In Chrome
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite