This axis aims at enhancing hypervisors, the virtualization systems for physical machines. Due to its cost-effectiveness, machine virtualization is the core technology in (public and private) cloud environments. Despite the extensive research in this field, machine virtualization still presents several challenges today. Among these challenges, we will focus on two fundamental issues: the overhead of I/O device virtualization and VM migration between heterogeneous processors.
I/O virtualization (performance objective): The figure below illustrates the performance degradation caused by virtualization for a wide range of applications, including NPB (CPU-intensive), Stream (memory-intensive), netperf (network-intensive), fio (latency-oriented disk I/O), and the Linux dd command (throughput-oriented disk I/O) when executed in the Microsoft Azure cloud. We observe that the degradation for dd is 55x the average degradation experienced by NPB. It is crucial to bridge this gap, especially in the current context of data-centric application proliferation (Big data, ML, and AI trends). We are investigating this issue with our industry partner, Outscale, a cloud provider, as part of two ongoing PhD theses.
Unlike other resources such as CPU, memory, and network interfaces, which are directly accessed by or streamlined for virtual machines, storage virtualization is unique because it is nearly always implemented through complex multi-layer architectures. For example, in many cloud environments like the ones of our partners Outscale and Eolas, unlike other resources, a VM's disk is remote relative to the host running the VM. We are considering the hyper-converged architecture1 (HCI) to minimize these indirections. We have an ongoing collaboration with Nutanix (a virtualization solutions provider for public and private cloud platforms), which is a pioneering company in this field. HCI advocates for the convergence of the compute cluster and the storage cluster. The compute nodes also integrate storage units (SSDs and HDDs).