透過您的圖書館登入
IP:3.146.37.35
  • 學位論文

利用嵌入式陰影分頁表改善 QEMU 64 位元架構系統模擬效能

Using Embedded Shadow Page Table to Improve the Performance of QEMU 64-bit Architecture System Emulation

指導教授 : 劉邦鋒
共同指導教授 : 吳真貞

摘要


本篇論文探討在 64 位元系統下,藉由將被模擬系統中部份 64 位元虛擬地址空間嵌入模擬系統之 64 位元虛擬地址空間,進而利用嵌入式陰影分頁表改善 64 位元系統模擬效能的有效性。 根據被模擬系統中 64 位元作業系統所支持的虛擬地址空間大小是否小於模擬系統中可使用之 64 位元虛擬地址空間大小,我們將 64 位元系統模擬分成兩種情況,並分別對這兩種情況設計一套嵌入式陰影分頁表系統。 在 x86-64 系統模擬 AArch64 系統的情境下,我們第一種嵌入式陰影分頁表系統執行 SPEC CINT2006 的效能平均能比 QEMU 快 1.47 倍。我們第二種嵌入式陰影分頁表的系統實做尚未完成,因此在 SPEC CINT2006 十二個 benchmark 中我們的系統只能加速其中五個,且只能比 QEMU 快 1.09 倍。然而我們設計的兩種嵌入式陰影分頁表系統在系統開機的模擬效能都沒有辦法比 QEMU 好。

並列摘要


This thesis investigates the effectiveness of using Embedding Shadow Page Table (ESPT) to improve 64-bit guest architecture emulation performance on 64-bit host system by embedding part of guest virtual address space into host virtual address space. We divide 64-bit system emulation into two cases, restricted case and general case, based on whether the size of 64-bit guest operating system supported virtual address space is smaller than the size of available host virtual address space. We proposed two ESPT system designs for those two cases. In AArch64-to-x86_64 system emulation, our restricted case ESPT system achieves an average speedup of 1.47 on SPEC CINT2006 benchmarks compared with QEMU. Our not yet complete general case ESPT system only improves five out of twelve benchmarks and achieves a speedup of only 1.09. However, neither of our system designs can improve system boot benchmarks.

參考文獻


[3] Chao-Jui Chang, Jan-Jan Wu, Wei-Chung Hsu, Pangfeng Liu, and Pen-Chung Yew. Efficient memory virtualization for cross-isa system mode emulation. In Proceedings of the 10th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, VEE ’14, pages 117–128, New York, NY, USA, 2014. ACM.
[13] Zhe Wang, Jianjun Li, Chenggang Wu, Dongyan Yang, Zhenjiang Wang, Wei-Chung Hsu, Bin Li, and Yong Guan. Hspt: Practical implementation and efficient management of embedded shadow page tables for cross-isa system virtual machines. In Proceedings of the 11th ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, VEE ’15, pages 53–64, New York, NY, USA, 2015. ACM.
[5] Jayneel Gandhi, Arkaprava Basu, Mark D. Hill, and Michael M. Swift. Efficient memory virtualization: Reducing dimensionality of nested page walks. In Proceedings of the 47th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO-47, pages 178–189, Washington, DC, USA, 2014. IEEE Computer Society.
[7] Ding-Yong Hong, Chun-Chen Hsu, Pen-Chung Yew, Jan-Jan Wu, Wei-Chung Hsu, Pangfeng Liu, Chien-Min Wang, and Yeh-Ching Chung. Hqemu: A multi-threaded and retargetable dynamic binary translator on multicores. In Proceedings of the Tenth International Symposium on Code Generation and Optimization, CGO ’12, pages 104–113, New York, NY, USA, 2012. ACM.
[4] J. H. Ding, P. C. Chang, W. C. Hsu, and Y. C. Chung. Pqemu: A parallel system emulator based on qemu. In Parallel and Distributed Systems (ICPADS), 2011 IEEE 17th International Conference on, pages 276–283, Dec 2011.

延伸閱讀