Revisiting Memory Management on Virtualized Environments

被引:5
作者
Wang, Xiaolin [1 ]
Weng, Lingmei [1 ]
Wang, Zhenlin [2 ]
Luo, Yingwei [1 ]
机构
[1] Peking Univ, Dept Comp Sci, Beijing 100871, Peoples R China
[2] Michigan Technol Univ, Dept Comp Sci, Houghton, MI 49931 USA
基金
中国国家自然科学基金; 美国国家科学基金会; 高等学校博士学科点专项科研基金;
关键词
Virtualization; shadowing paging; hardware-assisted paging; memory allocation; PAGE WALKS; PERFORMANCE;
D O I
10.1145/2555289.2555304
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
With the evolvement of hardware, 64-bit Central Processing Units (CPUs) and 64-bit Operating Systems (OSs) have dominated the market. This article investigates the performance of virtual memory management of Virtual Machines (VMs) with a large virtual address space in 64-bit OSs, which imposes different pressure on memory virtualization than 32-bit systems. Each of the two conventional memory virtualization approaches, Shadowing Paging (SP) and Hardware-Assisted Paging (HAP), causes different overhead for different applications. Our experiments show that 64-bit applications prefer to run in a VM using SP, while 32-bit applications do not have a uniform preference between SP and HAP. In this article, we trace this inconsistency between 32-bit applications and 64-bit applications to its root cause through a systematic empirical study in Linux systems and discover that the major overhead of SP results from memory management in the 32-bit GNU C library (glibc). We propose enhancements to the existing memory management algorithms, which substantially reduce the overhead of SP. Based on the evaluations using SPEC CPU2006, Parsec 2.1, and cloud benchmarks, our results show that SP, with the improved memory allocators, can compete with HAP in almost all cases, in both 64-bit and 32-bit systems. We conclude that without a significant breakthrough in HAP, researchers should pay more attention to SP, which is more flexible and cost effective.
引用
收藏
页数:20
相关论文
共 24 条
[1]   A comparison of software and hardware techniques for x86 virtualization [J].
Adams, Keith ;
Agesen, Ole .
ACM SIGPLAN NOTICES, 2006, 41 (11) :2-13
[2]  
Ahn J, 2012, CONF PROC INT SYMP C, P476
[3]  
[Anonymous], ISCA
[4]  
Barr TW, 2011, ISCA 2011: PROCEEDINGS OF THE 38TH ANNUAL INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE, P307, DOI 10.1145/2024723.2000101
[5]  
BARR TW, 2010, ACM SIGARCH COMPUTER, P48
[6]   Reconsidering custom memory allocation [J].
Berger, ED ;
Zorn, BG ;
McKinley, KS .
ACM SIGPLAN NOTICES, 2002, 37 (11) :1-12
[7]  
Berger ED, 2000, ACM SIGPLAN NOTICES, V35, P117, DOI 10.1145/384264.379232
[8]   Accelerating two-dimensional page walks for virtualized systems [J].
Bhargava, Ravi ;
Serebrin, Benjamin ;
Spadini, Francesco ;
Manne, Srilatha .
ACM SIGPLAN NOTICES, 2008, 43 (03) :26-35
[9]  
Bienia Christian, 2009, P 5 ANN WORKSH MOD B
[10]  
Chen Y, 2012, ASPLOS XVII: SEVENTEENTH INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS, P49