Xen2MX [JSS2014, VHPC2012] is a paravirtual interconnection framework, binary compatible with Myrinet/MX and wire compatible with MXoE. Its design is based on the Open-MX protocol, a port of the Myrinet/MX over generic Ethernet adapters. Xen2MX combines the zero-copy characteristics of Open-MX with Xen’s memory sharing techniques; the objective is to construct the most efficient data path for high-performance communication in virtualized environments that can be achieved with software techniques.
Experimental evaluation of our prototype implementation shows that Xen2MX is able to achieve nearly the same raw performance as Open-MX running in a non-virtualized environment. On the latency front, Xen2MX reduces the RTT latency to less than 60% of the generic paravirtual setup with a software bridge and performs as close as 96% to the directly attached case (IOV). Regarding throughput, Xen2MX is able to nearly saturate a 10Gbps link, achieving 1159MB/s, compared to 1192MB/s of the directly-attached case. Xen2MX scales efficiently with the number of VMs, saturating the link for even smaller messages when 40 single-core VMs put pressure on the network adapters.
Xen2MX is open-source, available on github.