An In-Kernel Virtio Block Device Accelerator For Linux

Posted by Michael Larabel on December 02, 2012

For the past several months there has been work on vhost-blk, an in-kernel virito-blk device accelerator. This kernel-based accelerator can provide measurable speed-ups for disk/block device access by virtualized guest machines.

From the latest vhost-blk patch: "Due to lack of proper in-kernel AIO interface, this version converts guest's I/O request to bio and use submit_bio() to submit I/O directly. So this version any supports raw block device as guest's disk image, e.g. /dev/sda, /dev/ram0. We can add file based image support to vhost-blk once we have in-kernel AIO interface."

In terms of handling an in-kernel AIO interface, there's also patches floating around.

The original vhost-blk support patch, which amounts to a few hundred lines of new code in the Linux kernel, amounted to 5~15% performance improvements compared to the user-space virtio-blk implementation. Performance results on the latest vhost-blk v6 patch indicate performance improvements from +13~108% on a Fusion I/O device or up to a 216% performance improvement when dealing with a Ramdisk device.

It's possible we could see vhost-blk support merged into the Linux 3.8 kernel.

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. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. Phoronix Test Suite 4.6.0 "Utsira" Released
  2. New Intel X.Org Driver Supports All Of Haswell
  3. SQLite Now Faster With Memory Mapped I/O
  4. Microsoft Releases Skype For Linux 4.2, Has Bug-Fixes
  5. Qt For Tizen Launches, Based On Qt 5.1
  6. KTAP Released For Linux Kernel Dynamic Tracing
  7. Linux 3.10-rc2 Kernel Takes In A Few Extra Pulls
  8. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  9. Handbrake 0.9.9 Supports OpenCL Offloading
  10. Freedreno Gallium3D Now Banging The Adreno A3XX
  11. Jolla Announces Their First Phone
Latest Forum Talk
  1. QEMU 1.5 Supports VGA Passthrough, Better USB 3.0
  2. New Intel X.Org Driver Supports All Of Haswell
  3. Intel Linux OpenGL Driver Leading Over Apple OS X
  4. Modern Intel Gallium3D Driver Still Being Toyed...
  5. Microsoft Releases Skype For Linux 4.2, Has...
  6. Jolla Announces Their First Phone
  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