NVMePass: A Lightweight, High-performance and Scalable NVMe Virtualization Architecture with I/O Queues Passthrough
Yiquan Chen, Zhen Jin, Yijing Wang, Yi Chen, Jiexiong Xu, Hao Yu, Jinlong Chen, Wenhai Lin, Kanghua Fang, Keyao Zhang, Chengkun Wei, Qiang Liu
Abstract
Most data-intensive applications currently run on NVMe storage, and virtualization is essential in cloud computing. Existing NVMe virtualization technologies include software-based and hardware-assisted. Virtio suffers from severe performance degradation, and polling-based solutions consume too many valuable CPU resources. Hardware-assisted solutions provide high performance and no CPU usage but have the challenges of developing dedicated hardware.In this paper, we propose NVMePass, a novel software-hardware co-design NVMe passthrough virtualization architecture designed to achieve high performance and no CPU overhead while maintaining high scalability. The key ideas of NVMePass are NVMe I/O queues passthrough for VMs and a mechanism to ensure security. The NVMePass supports DMA and interrupts remapping for VMs without hypervisor involvement, eliminating virtualization overhead and providing near-native performance. Isolation is achieved by I/O queues and logical block address resources exclusively allocated to VMs. We propose NVMe Resource Domain (NRD) and implement it in the NVMe controller to intercept illegal I/O requests. Thus, isolation and security are fully achieved. Results from our experiments show that NVMePass can provide comparable performance to VFIO, with an IOPS of of VFIO. Furthermore, compared to SPDK-Vhost, NVMePass achieves lower latency when running 150 VMs, and NVMePass has an improvement of OPS performance in a real-world application when running 100 VMs.
Ask about this paper
Ask your agent about it.
Lune has read the top-tier papers around this one, so every answer names the papers it rests on.
Your agent calls
Lunesearch_papers
Free to start. No credit card required.
Terminal
Install the CLIlune papers get a26db703-95a5-453e-85d6-734ddc65254bCited by top-tier papers1
Ask how each one uses itRelated papers
- Translation Pass-Through for Near-Native Paging Performance in VMsShai Bergman, Mark Silberstein, Takahiro Shinagawa, Peter R. Pietzuch et al.USENIX ATC 2023 · 10 citations
- HD-IOV: SW-HW Co-designed I/O Virtualization with Scalability and Flexibility for Hyper-Density CloudZongpu Zhang, Jiangtao Chen, Banghao Ying, Yahui Cao et al.EuroSys 2024 · 7 citations
- D-Shield: Enabling Processor-side Encryption and Integrity Verification for Secure NVMe DrivesMd Hafizul Islam Chowdhuryy, Myoungsoo Jung, Fan Yao, Amro AwadHPCA 2023 · 7 citations
- EXO: Accelerating Storage Paravirtualization with eBPFShi Qiu, Li Wang, Yiming ZhangSC 2024 · 2 citations
- Spool: Reliable Virtualized NVMe Storage Pool in Public Cloud InfrastructureShuai Xue, Shang Zhao, Quan Chen, Gang Deng et al.USENIX ATC 2020 · 17 citations
