coIOMMU: A Virtual IOMMU with Cooperative DMA Buffer Tracking for Efficient Memory Management in Direct I/O
Kun Tian, Yu Zhang, Luwei Kang, Yan Zhao, Yaozu Dong
Abstract
Direct assignment of I/O devices (Direct I/O) is the best performant I/O virtualization method. However, it requires the hypervisor to statically pin the entire guest memory, thereby hindering the efficiency of memory management. This problem can be fixed by presenting a virtual IOMMU (vIOMMU). Emulation of its DMA remapping capability carries sufficient information about guest DMA buffers, allowing the hypervisor to do fine-grained pinning of guest memory. However, established vIOMMUs are not widely used by commodity guests due to the emulation cost, thus cannot reliably eliminate static pinning in direct I/O.
We propose and implement coIOMMU, a new vIOMMU architecture for efficient memory management with a cooperative DMA buffer tracking mechanism. The new mechanism provides a dedicated interface for hypervisor and guest to exchange DMA buffer information over a shared DMA tracking table (DTT), orthogonal to the costly DMA remapping interface. We also explore two techniques: smart pinning and lazy unpinning, to minimize the impact on the performance of direct I/O. Our evaluation results show that coIOMMU dramatically improves the efficiency of memory management in wide direct I/O usages with negligible cost. Moreover, the desired semantics of DMA remapping can be sustained when cooperative tracking is enabled alongside. Overall, we believe that coIOMMU can serve as a reliable solution for efficient memory management in direct I/O.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers12
- Pond: CXL-Based Memory Pooling Systems for Cloud PlatformsHuaicheng Li, Daniel S. Berger, Lisa Hsu, Daniel Ernst et al.ASPLOS 2023 · 328 citations
- Static Detection of Unsafe DMA Accesses in Device DriversJia-Ju Bai, Tuo Li, Kangjie Lu, Shi-Min HuUSENIX Security 2021 · 28 citations
- Hyrax: Fail-in-Place Server Operation in Cloud PlatformsJialun Lyu, Marisa You, Celine Irvene, Mark Jung et al.OSDI 2023 · 18 citations
- Efficient Memory Overcommitment for I/O Passthrough Enabled VMs via Fine-grained Page Meta-data ManagementYaohui Wang, Ben Luo, Yibin ShenUSENIX ATC 2023 · 18 citations
- Alibaba Stellar: A New Generation RDMA Network for Cloud AIJie Lu, Jiaqi Gao, Fei Feng, Zhiqiang He et al.SIGCOMM 2025 · 14 citations
Builds on1
Related papers
- To PRI or Not To PRI, That's the questionYun Wang, Liang Chen, Jie Ji, Xianting Tian et al.OSDI 2025 · 1 citation
- Fast & Safe IO Memory ProtectionBenny Rubin, Saksham Agarwal, Qizhe Cai, Rachit AgarwalSOSP 2024 · 1 citation
- VPRI: Efficient I/O Page Fault Handling via Software-Hardware Co-Design for IaaS CloudsKaijie Guo, Dingji Li, Ben Luo, Yibin Shen et al.SOSP 2024 · 1 citation
- MEGATRON: Software-Managed Device TLB for Shared-Memory FPGA VirtualizationYanqiang Liu, Jiacheng Ma, Zhengjun Zhang, Linsheng Li et al.DAC 2021 · 7 citations
- Exit-Less, Isolated, and Shared Access for Virtual MachinesKenichi Yasukata, Hajime Tazaki, Pierre-Louis AublinASPLOS 2023 · 7 citations
