Presentation
EXO: Accelerating Storage Paravirtualization with eBPF
SessionStorage Management
DescriptionKVM is the dominant VM hypervisor on Linux, and relies on QEMU to realize the backends of the virtio family of devices such as virtio-blk. However, KVM/QEMU-based paravirtualization prolongs the guest I/O path with multiple context switches. As fast NVMe storage devices have been widely used, the software overhead is becomes non-negligible. This paper presents EXO, an extension of virtio-blk for efficient KVM/QEMU-based storage paravirtualization. The insight is that no matter how complex the QEMU backend’ processing is, to handle a guest I/O request, the host storage stack only needs to know the request’s guest-to-host address mapping. Therefore, we preserve the original slow I/O path of virtio-blk as a fallback, and leverage eBPF to introduce an in-kernel fast path that directly queries the address mapping without switching to the user-space backend processing. Extensive evaluation shows that compared to existing storage paravirtualization solutions, EXO achieves similar or even higher performance.
Event Type
Paper
TimeThursday, 21 November 20243:30pm - 4pm EST
LocationB309
I/O, Storage, Archive
Archive
view
