Published June 13, 2017 | Version v1
Conference paper Open

Lightweight and Generic RDMA Engine Para-Virtualization for the KVM Hypervisor

  • 1. Virtual Open Systems, Grenoble, France
  • 2. Foundation for Research and Technology – Hellas (FORTH), Crete, Greece


Remote DMA (RDMA) engines are widely used in clusters/data-centres to improve the performance of data transfers between applications running on different nodes of a computing system. RDMAs are today supported by most network architectures and distributed programming models. However, with the massive usage of virtualization most applications will use RDMAs from virtual machines, and the virtualization of such I/O devices poses several challenges. This paper describes a generic para-virtualization framework based on API Remoting, providing at the same time the flexibility of software based virtualization, and the low overhead of hardware-assisted solutions. The solution presented in this paper is targeting the KVM hypervisor, but is not bound to any target network architecture or specific RDMA engine, thanks to the virtualization at the level of the programming API. In addition, two of the major limitations of para-virtualization are addressed: data sharing between host and guest, and interactions between guests and hypervisor. A set of experimental results showed a near to native performance for the final user of the RDMA (i.e., maximum transfer bandwidth), with a higher overhead only to simulate the API functions used to initialize the RDMA device or allocate/deallocate RDMA buffers.


This paper has been accepted for publication at the 2017 International Conference on High Performance Computing & Simulation (HPCS 2017), Genoa, Italy, July 17 – 21, 2017



Files (844.8 kB)

Name Size Download all
844.8 kB Preview Download

Additional details


ExaNeSt – European Exascale System Interconnect and Storage 671553
European Commission