BTMMU: An Efficient and Versatile Cross-ISA Memory Virtualization
Full system dynamic binary translation (DBT) has many important applications, but it is typically much slower than the native host. One major overhead in full system DBT comes from cross-ISA memory virtualization, where multi-level memory address translation is needed to map guest virtual address into host physical address. Like the SoftMMU used in the popular open-source emulator QEMU, software-based memory virtualization solutions are not efficient. Meanwhile, mature techniques for same-ISA virtualization such as shadow page table or second level address translation are not directly applicable due to cross-ISA difficulties. Some previous studies achieved significant speedup by utilizing existing hardware (TLB or virtualization hardware) of the host. However, since the hardware is not designed with cross-ISA in mind, those solutions had some limitations that were hard to overcome. Most of them only supported guests with smaller virtual address space than the host. Some supported only guests with the same page size. And some did not support privileged memory accesses. This paper proposes a new solution named BTMMU (Binary Translation Memory Management Unit). BTMMU composes of a low-cost hardware extension of host MMU, a kernel module and a patched QEMU version. BTMMU is able to solve most known limitations of previous hardware-assisted solutions and thus versatile enough for real deployments. Meanwhile, BTMMU achieves high efficiency by directly accessing guest address space, implementing shadow page table in kernel module, utilizing dedicated entrance for guest-related MMU exceptions and various software optimizations. Evaluations on SPEC CINT2006 benchmark suite and some real-world applications show that BTMMU achieves 1.40x and 1.36x speedup on IA32-to-MIPS64 and X86_64-to-MIPS64 configurations respectively when comparing with the base QEMU version. The result is compared to a representative previous work and shows its advantage.
Fri 16 AprDisplayed time zone: Pacific Time (US & Canada) change
15:30 - 17:00 | |||
15:30 30mTalk | Extending Intel PML for Hardware-Assisted Working Set Size Estimation of VMs Research Papers Stella Bitchebe , Djob Mvondo University of Edinburgh, UK, Alain Tchana , Laurent Réveillère Bordeaux INP, Noel de Palma LIG (Laboratoire d'Informatique de Grenoble) DOI | ||
16:00 30mTalk | BTMMU: An Efficient and Versatile Cross-ISA Memory Virtualization Research Papers Kele Huang Institute of Computing Technology at Chinese Academy of Sciences, China, Fuxin Zhang , Cun Li , Gen Niu , Junrong Wu , Tianyi Liu DOI | ||
16:30 30mTalk | Analysis of NVMe-SSD to Passthrough GPU Data Transfer in Virtualized Systems Research Papers DOI |