LeapIO: Efficient and Portable Virtual NVMe Storage on ARM SoCs - Li, Huaicheng; Hao, Mingzhe; Novakovic, Stanko; Gogte, Vaibhav; Govindan, Sriram; Ports, Dan R. K.; Zhang, Irene; Bianchini, Ricardo; Gunawi, Haryadi S.; Badam, Anirudh (Proceedings on the International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS), 2020)
Today’s cloud storage stack is extremely resource hungry, burning 10-20% of datacenter x86 cores, a major “storage tax” that cloud providers must pay. Yet, the complex cloud storage stack is not completely oﬄoad-ready to today’s IO accelerators. We present LeapIO, a new cloud storage stack that leverages ARM-based co-processors to oﬄoad complex storage services. LeapIO addresses many deployment challenges, such as hardware fungibility, software portability, virtualizability, composability, and eﬃciency. It uses a set of OS/software techniques and new hardware properties that provide a uniform address space across the x86 and ARM cores and expose virtual NVMe storage to unmodiﬁed guest VMs, at a performance that is competitive with bare-metal servers.