../eurosys24-ae-53

EuroSys24 AE: #53 HDIOV

Table of contents

#53: HD-IOV: SW-HW Co-designed I/O Virtualization with Scalability and Flexibility for Hyper-Density Cloud

Paper Summary

This paper proposes an I/O virtualization approach that offers greater scalability and flexibility compared to SR-IOV. SR-IOV relies on hardware support to expose multiple Virtual Functions (VFs) for multiplexing PCIe hardware resources across VMs. However, HD-IOV shifts the emulation of VFs into software, eliminating the complex management logic in hardware and increasing the limit on the number of VFs that can be created. This preserves VMs' direct access to hardware queue pairs ensures optimal performance. To distinguish between emulated devices, HD-IOV leverages the IOMMU and uses Process Address Space ID (PASID) as an identifier. Host CPUs already possess PASID-awareness since VT-d 3.0 on Intel platforms. However, hardware devices still need to be modified to be compatible with HD-IOV by integrating PASID-awareness.

HD-IOV's host-side device multiplexing logic (VDCM) is implemented in the Linux kernel and has been upstreamed. This paper uses the Ubuntu variant of kernel version 5.11.0 on the host. HD-IOV supports two device models currently, namely NIC and accelerators. Their guest drivers are implemented in the Linux kernel (CentOS variant of v5.15.4) and the out-of-tree Intel QAT driver (v0.9.4), respectively.

Badges

Overall only "Artifact Available" badge is justified. None of "Functional" and "Reproduced" can be fully justified. I am unable to identify the exact source files supporting authors design and thus cannot confirm those code are functional. I am also unable to get a proper evaluation platform to perform required benchmarks and thus I have no support for a reproducable badge either.

Here are the detailed comments:

The aboved comments are only temporary. I am very happy to see any improvements made on the artifact documentation. I am also very glad to rerun benchmarks on a proper evaluation platform if provided.

Checklist

Artifact Available

Artifact Functional

Results Reproduced