Affiliation:
1. University of Edinburgh, UK
Abstract
Hardware virtualization solutions provide users with benefits ranging from application isolation through server consolidation to improved disaster recovery and faster server provisioning. While hardware assistance for virtualization is supported by all major processor architectures, including Intel, ARM, PowerPC, and MIPS, these extensions are targeted at virtualization of the same architecture, for example, an x86 guest on an x86 host system. Existing techniques for cross-architecture virtualization, for example, an ARM guest on an x86 host, still incur a substantial overhead for CPU, memory, and I/O virtualization due to the necessity for software emulation of these mismatched system components. In this article, we present a new hardware-accelerated hypervisor called C
aptive
, employing a range of novel techniques that exploit existing hardware virtualization extensions for improving the performance of full-system cross-platform virtualization. We illustrate how (1) guest memory management unit (MMU) events and operations can be mapped onto host memory virtualization extensions, eliminating the need for costly software MMU emulation, (2) a block-based dynamic binary translation engine inside the virtual machine can improve CPU virtualization performance, (3) memory-mapped guest I/O can be efficiently translated to fast I/O specific calls to emulated devices, and (4) the cost for asynchronous guest interrupts can be reduced. For an ARM-based Linux guest system running on an x86 host with Intel VT support, we demonstrate application performance levels, based on SPEC CPU2006 benchmarks, of up to 5.88× over state-of-the-art Q
emu
and 2.5× on average, achieving a guest dynamic instruction throughput of up to 1280 MIPS (million instructions per second) and 915.52 MIPS, on average.
Publisher
Association for Computing Machinery (ACM)
Subject
Hardware and Architecture,Information Systems,Software
Reference35 articles.
1. AMD Developer Central. 2010. AMD SimNow simulator. Retrieved from http://developer.amd.com/tools-and-sdks/cpu-development/simnow-simulator/. AMD Developer Central. 2010. AMD SimNow simulator. Retrieved from http://developer.amd.com/tools-and-sdks/cpu-development/simnow-simulator/.
2. ARM. 2011a. About the PB-A8. (2011). Retrieved from http://infocenter.arm.com/help/topic/com.arm.doc. dui0417d/BABCHBFC.html#CHDFGCFB Retrieved 02-June-2016. ARM. 2011a. About the PB-A8. (2011). Retrieved from http://infocenter.arm.com/help/topic/com.arm.doc. dui0417d/BABCHBFC.html#CHDFGCFB Retrieved 02-June-2016.
3. ARM. 2011b. RealView Platform Baseboard for Cortex-A8 User Guide. Retrieved from http://infocenter.arm. com/help/index.jsp?topic=/com.arm.doc.dui0417d/index.html. ARM. 2011b. RealView Platform Baseboard for Cortex-A8 User Guide. Retrieved from http://infocenter.arm. com/help/index.jsp?topic=/com.arm.doc.dui0417d/index.html.
4. The ArchC Architecture Description Language and Tools
Cited by
9 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Cloud Security;Computer and Information Security Handbook;2025
2. An Instruction Inflation Analyzing Framework for Dynamic Binary Translators;ACM Transactions on Architecture and Code Optimization;2024-03-23
3. A System-Level Dynamic Binary Translator Using Automatically-Learned Translation Rules;2024 IEEE/ACM International Symposium on Code Generation and Optimization (CGO);2024-03-02
4. On-Demand Triggered Memory Management Unit in Dynamic Binary Translator;Lecture Notes in Computer Science;2023-11-08
5. Eliminate the overhead of interrupt checking in full-system dynamic binary translator;Proceedings of the 15th ACM International Conference on Systems and Storage;2022-06-06