Cloud computing infrastructures provide vast processing power and host a diverse set of computing workloads, ranging from service-oriented deployments to HPC applications. As HPC applications scale to a large number of VMs, providing near-native network I/O performance to each peer VM is an important challenge. To deploy communication-intensive applications in the cloud, we have to fully exploit the underlying hardware, while at the same time retaining the benefits of virtualization: consolidation, flexibility, isolation, and ease of management. Current approaches present either limited performance or require specialized hardware that increases the complexity of the setup. In this talk we present Xen2MX, 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.
Anastasios Nanos is a PhD Candidate in Computer Engineering (ECE, NTUA - expected graduation: 2013). His area of specialization is I/O systems for high-performance and cloud computing, and particularly the efficient sharing of I/O devices in Virtualized Environments. His research interests include Communication Architectures for Clusters, Systems Software, I/O Virtualization, and Scalable Storage Architectures based on Clusters.