HMvisor: dynamic hybrid memory management for virtual machines

被引:10
作者
Yang, Dang [1 ]
Liu, Haikun [1 ]
Jin, Hai [1 ]
Zhang, Yu [1 ]
机构
[1] Huazhong Univ Sci & Technol, Natl Engn Res Ctr Big Data Technol & Syst, Sch Comp Sci & Technol, Serv Comp Technol & Syst Lab,Cluster & Grid Comp, Wuhan 430074, Peoples R China
基金
中国国家自然科学基金;
关键词
hypervisor; virtual machine; non-volatile memory; hybrid memory management; PHASE-CHANGE MEMORY; DIE-STACKING; PERFORMANCE; EFFICIENT;
D O I
10.1007/s11432-019-2729-5
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
Emerging non-volatile memory (NVM) technologies promise high density, low cost and dynamic random access memory (DRAM)-like performance, at the expense of limited write endurance and high write energy consumption. It is more practical to use NVM combining with the traditional DRAM. However, the hybrid memory management such as page migration becomes more challenging in a virtualization environment because virtual machines (VMs) are unaware of the memory heterogeneity. In this paper, we propose HMvisor, a hypervisor and VM coordinated hybrid memory management mechanism to better utilize DRAM and NVM resources. HMvisor exposes the memory heterogeneity to VMs by mapping virtual NUMA nodes to different physical NUMA nodes. We propose a lightweight and efficient page migration mechanism by decoupling page hotness tracking from page migration. HMvisor performs those operations in the hypervisor and VMs separately, without disrupting the execution of VMs. We also propose a memory resource trading policy to adjust the capacity of DRAM and NVM for each VM, with the monetary cost unchanged. We implement our prototype system based on QEMU/KVM and evaluate it with several benchmarks. Experimental results show that HMvisor can reduce 50% of write traffic to NVM with less than 5% performance overhead. Moreover, the hybrid memory adjustment scheme in HMvisor can significantly improve application performance by up to 30 x.
引用
收藏
页数:16
相关论文
共 41 条
[1]  
Agarwal N, 2017, TWENTY-SECOND INTERNATIONAL CONFERENCE ON ARCHITECTURAL SUPPORT FOR PROGRAMMING LANGUAGES AND OPERATING SYSTEMS (ASPLOS XXII), P631, DOI 10.1145/3037697.3037706
[2]  
[Anonymous], 2011, 25 INT C SUP ICS
[3]  
[Anonymous], 2007, P LIN S
[4]  
Black B, 2006, INT SYMP MICROARCH, P469
[5]   DMM: A dynamic memory mapping model for virtual machines [J].
Chen HaoGang ;
Wang XiaoLin ;
Wang ZhenLin ;
Zhang BinBin ;
Luo YingWei ;
Li XiaoMing .
SCIENCE CHINA-INFORMATION SCIENCES, 2010, 53 (06) :1097-1108
[6]   BATMAN: Techniques for Maximizing System Bandwidth of Memory Systems with Stacked-DRAM [J].
Chou, Chiachen ;
Jaleel, Aamer ;
Qureshi, Moinuddin .
MEMSYS 2017: PROCEEDINGS OF THE INTERNATIONAL SYMPOSIUM ON MEMORY SYSTEMS, 2017, :268-280
[7]  
Coburn J., 2012, SIGPLAN NOTICES, V47, P105, DOI [10.1145/2248487.1950380, DOI 10.1145/2248487.1950380]
[8]  
David R, 2007, LINUX FAKE NUMA PATC
[9]  
Dhiman G, 2009, DES AUT CON, P664
[10]  
Dong X., 2010, ACM SIGGRAPH 2010 PO, P1, DOI DOI 10.1145/1836845.1836920