›› 2012, Vol. 27 ›› Issue (1): 92-104.doi: 10.1007/s11390-012-1208-1

• Architecture and VLSI Design • Previous Articles     Next Articles

Mercury: Combining Performance with Dependability Using Self-Virtualization

Hai-Bo Chen1 (陈海波), Member, CCF, ACM, IEEE, Feng-Zhe Zhang2 (张逢喆), Member, CCF, ACM, Rong Chen2 (陈榕), Bin-Yu Zang2 (臧斌宇), Senior Member, CCF, Member, ACM and Pen-Chung Yew3 (游本中), Fellow, IEEE   

  1. 1. School of Software, Shanghai Jiaotong University, Shanghai 200240, China;
    2. Parallel Processing Institute, Fudan University, Shanghai 201203, China;
    3. Institute of Information Science, Academia Sinica, Taipei, China
  • Received:2010-12-15 Revised:2011-10-07 Online:2012-01-05 Published:2012-01-05
  • Supported by:

    This work was supported by the National Nature Science Foundation of China under Grant Nos. 61003002 and 90818015, the Science and Technology Commission of Shanghai under Grant No. 10511500100, Fundamental Research Funds for the Central Universities in China, and Shanghai Leading Academic Discipline Project under Grant No. B114.

Virtualization has recently gained popularity largely due to its promise in increasing utilization, improving availability and enhancing security. Very often, the role of computer systems needs to change as the business environment changes. Initially, the system may only need to host one operating system and seek full execution speed. Later, it may be required to add other functionalities such as allowing easy software/hardware maintenance, surviving system failures and hosting multiple operating systems. Virtualization allows these functionalities to be supported easily and effectively. However, virtualization techniques generally incur non-negligible performance penalty. Fortunately, many virtualization-enabled features such as online software/hardware maintenance and fault tolerance do not require virtualization standby all the time. Based on this observation, this paper proposes a technique, called Self-virtualization, which provides the operating system with the capability to turn on and off virtualization on demand, without disturbing running applications. This technique enables computer systems to reap most benefits from virtualization without sacrificing performance. This paper presents the design and implementation of Mercury, a working prototype based on Linux and Xen virtual machine monitor. The performance measurement shows that Mercury incurs very little overhead: about 0.2 ms on 3 GHz Xeon CPU to complete a mode switch, and negligible performance degradation compared to Linux.

[1] Goldberg R P. Survey of virtual machine research. IEEEComputer, 1974, 7(6): 34-45.

[2] Krsul I, Ganguly A, Zhang J, Fortes J A B, Figueiredo R J.VMPlants: Providing and managing virtual machine execu-tion environments for grid computing. In Proc. ACM/IEEEConference on Supercomputing, Pittsburgh, USA, Nov. 6-12,2004.

[3] Adabala S, Chadha V, Chawla P et al. From virtualized re-sources to virtual computing grids: The In-VIGO system.Future Generation Computer Systems, 2005, 21(6): 896-909.

[4] Song Y, Wang H, Li Y, Feng B, Sun Y. Multi-tiered on-demand resource scheduling for vm-based data center. InProc. the 9th IEEE/ACM International Symposium on Clus-ter Computing and the Grid, Shanghai, China, May 18-21,2009, pp.148-155.

[5] Zhang X, Dwarkadas S, Shen K. Hardware execution throt-tling for multi-core resource management. In Proc. the 2009Conference on USENIX Annual Technical Conference, SanDiego, USA, June 14-19, 2009.

[6] Sundararaj A I, Dinda P A. Towards virtual networks for vir-tual machine grid computing. In Proc. the 3rd Virtual Ma-chine Research and Technology Symposium, San Jose, USA,May 6-7, 2004, pp.177-190.

[7] Dunlap G W, King S T, Cinar S, Basrai M A, Chen P M.ReVirt: Enabling intrusion analysis through virtual-machinelogging and replay. ACM SIGOPS Operating Systems Re-view, 2002, 36: 211-224.

[8] Joshi A, King S T, Dunlap G W, Chen P M. Detecting pastand present intrusions through vulnerability-specific predi-cates. ACM SIGOPS Operating Systems Review, 2005, 39(5):91-104.

[9] Chen H, Chen J, Mao W, Yan F. Daonity-Grid security fromtwo levels of virtualization. Information Security TechnicalReport, 2007, 12(3): 123-138.

[10] Chen X, Garfinkel T, Lewis E C, Subrahmanyam P, Wald-spurger C A, Boneh D, Dwoskin J, Ports D R K. Overshadow:A virtualization-based approach to retrofitting protection incommodity operating systems. In Proc. the 13th Int. Conf.Architectural Support for Programming Languages and Oper-ating Systems, Seattle, USA, March 1-5, 2008, pp.2-13.

[11] Lowell D E, Saito Y, Samberg E J. Devirtualizable virtualmachines enabling general, single-node, online maintenance.In Proc. the 11th International Conference on ArchitecturalSupport for Programming Languages and Operating Systems,Boston, USA, October 9-13, 2004, pp.211-223.

[12] Chen H, Chen R, Zhang F, Zang B, Yew P C. Live updatingoperating systems using virtualization. In Proc. the 2nd In-ternational Conference on Virtual Execution Environments,Ottawa, Canada, June 14-16, 2006, pp.35-44.

[13] Mergen M F, Uhlig V, Krieger O, Xenidis J. Virtualizationfor high-performance computing. ACM SIGOPS OperatingSystems Review, 2006, 40(2): 8-11.

[14] Youseff L, Wolski R, Gorda B, Krintz C. Paravirtualizationfor HPC Systems. Technical Report TR 2006-10, Universityof California, Santa Barbara, August 2006.

[15] Bjerke H K F. HPC Virtualization with Xen on Itanium [Mas-ter's thesis]. Norwegian University of Science and Technology,July 2005.

[16] Hu L, Jin H, Liao X, Xiong X, Liu H. Magnet: A novelscheduling policy for power reduction in cluster with virtualmachines. In Proc. IEEE Int. Conf. Cluster Computing,Sukuba, Japan. Sept. 29-Oct. 1, 2008, pp.13-22.

[17] Chen H, Jin H, Shao Z, Yu K, Tian K. ClientVisor: LeverageCOTS OS functionalities for power management in virtualizeddesktop environment. In Proc. the 5th International Confer-ence on Virtual Execution Environments, Washington, USA,March 11-13, 2009, pp.131-140.

[18] Das T, Padala P, Padmanabhan V N, Ramjee R, Shin K G.Litegreen: Saving energy in networked desktops using virtua-lization. In Proc. USENIX Annual Technical Conference,Boston, USA, June 23-25, 2010.

[19] Ge R, Feng X, Song S, Chang H C, Li D, Cameron K W. Pow-erPack: Energy profiling and analysis of high-performancesystems and applications. IEEE Transactions on Parallel andDistributed Systems, 2010, 21(5): 658-671.

[20] Amazon Elastic Compute Cloud (Amazon EC2). AmazonInc., http://aws.amazon.com/ec2/, 2008.

[21] Nurmi D, Wolski R, Grzegorczyk C, Obertelli G, Soman S,Youseff L, Zagorodnov D. The eucalyptus open-source cloud-computing system. In Proc. the 9th IEEE/ACM Inter-national Symposium on Cluster Computing and the Grid,Shanghai, China, May 18-21, 2009, pp.124-131.

[22] Neiger G, Santoni A, Leung F, Rodgers D, Uhlig R. Intelvirtualization technology: Hardware support for efficient pro-cessor virtualization. IntelrTechnology Journal, 2006, 10(3):167-177.

[23] Abramson D, Jackson J, Muthrasanallur S, Neiger G, RegnierG, Sankaran R, Schoinas I, Uhlig R, Vembu B, Wiegert J. Intelvirtualization technology for directed I/O. IntelrTechnologyJournal, 2006, 10(3): 179-192.

[24] Bhargava R, Serebrin B, Spadini F, Manne S. Acceleratingtwo-dimensional page walks for virtualized systems. In Proc.Int. Conf. Architectural Support for Programming Languagesand Operating Systems, Seattle, USA, March 1-5, 2008, pp.26-35.

[25] Zhang X, Xiao L, Qu Y. Improving distributed workload per-formance by sharing both CPU and memory resources. InProc. International Conference on Distributed ComputingSystems, Taipei, China, April 2000, pp.233-241.

[26] Theurer A, Rister K, Krieger O, Harper R, Dobbelstein S.Virtual scalability: Charting the performance of Linux in avirtual world. In Proc. Linux Symposium, Ottawa, Canada,July 19-22, 2006, pp.393-402.

[27] Padala P, Zhu X, Wang Z, Singhal S, Shin K G et al. Per-formance evaluation of virtualization technologies for serverconsolidation. Technical Report HPL-2007-59, HP Labs, 2007.

[28] Xiang S, Haibo C, Zang B. Characterizing the Performanceand scalability of many-core applications on virtualized plat-forms. Technical Report FDUPPITR-2010-002, Parallel Pro-cessing Institute, Fudan University, November 2010.

[29] Edward W. Benchmarking Amazon EC2 for high-performancescientific computing. Usenix Login, 2008, 33(5): 18-24.

[30] Barham P, Dragovic B, Fraser K, Hand S, Harris T, HoA, Neugebauer R, Pratt I, Warfield A. Xen and the art ofvirtualization. In Proc. the 19th ACM International Sympo-sium on Operating System Principles, Boston Landing, USA,October 19-22, 2003, pp.164-177.

[31] Schroeder B, Pinheiro E, Weber W D. DRAM errors in thewild: A large-scale field study. In Proc. the 11th Interna-tional Joint Conference on Measurement and Modeling ofComputer Systems, Seattle, USA, June 2009, pp.193-204.

[32] Ford D, Labelle F, Popovici F I, Stokely M, Truong V A,Barroso L, Grimes C, Quinlan S. Availability in globally dis-tributed storage systems. In Proc. the 9th Usenix Conferenceon Operating System Design and Implementation, Vancouver,Canada, October 4-6, 2010, pp.1-7.

[33] Huang W, Abali B, Panda D K. A case for high performancecomputing with virtual machines. In Proc. the 20th An-nual International Conference on Supercomputing, Queens-land, Australia, June 28-July 1, 2006, pp.125-134.

[34] Soltesz S, P?otzl H, Fiuczynski M E, Bavier A, Peterson L.Container-based operating system virtualization: A scalable,high-performance alternative to hypervisors. In Proc. the 2ndEuropean Conference on Computer Systems, Lisbon, Portu-gal, March 21-23, 2007, pp.275-287.

[35] Vallee G, Naughton T, Ong H, Scott S L. Checkpoint/restartof virtual machines based on Xen. In Proc. the High Avai-lability and Performance Workshop, Santa Fe, USA, October2006, pp.1-6.

[36] VMware. The VMware software package. http://www.vmware.com, 2006.

[37] Russell R. x86 paravirt ops: Binary patching infrastructure,http://lwn.net/Articles/194340/, 2006.

[38] Zachary A, Daniel A, Daniel H, Pratap S. Virtual machine in-terface (VMI). http://www.vmware.com/pdf/vmi specs.pdf,March 2006.

[39] Clark C, Fraser K, Hand S et al. Live migration of virtualmachines. In Proc. the 2nd Usenix Conference on NetworkedSystem Design and Implementation, Boston, USA, May 2-4,2005, pp.273-286.

[40] Kappel J A, Velte A T, Velte T J. Microsoft Virtualizationwith Hyper-V. McGraw-Hill, 2009.

[41] Whitaker A, Shaw M, Gribble S D. Scale and performancein the Denali isolation kernel. In Proc. Usenix Conferenceon Operating Systems Design and Implementation, Boston,USA, December 2002, pp.195-209.

[42] KVM. KVM: Kernel-based virtual machine for Linux.http://www.linux-kvm.org/page/Main Page, 2007.

[43] Intel Cooperation. Intel vanderpool technology for IA-32 pro-cessors (VT-x). http://www.intel.com/technology/computing/vptech/, 2005.

[44] Advanced Micro Devices. Secure virtual machine architecturereference manual. http://www.0x04.net/doc/amd/33047.pdf,2005.

[45] Dong Y, Yang X, Li X, Li J, Tian K, Guan H. High perfor-mance network virtualization with SR-IOV. In Proc. IEEEInternational Symposium on High Performance ComputerArchitecture, Bangalore, India, January 9-14, 2010, pp.1-10.

[46] Sugerman J, Venkitachalam G, Lim B H. Virtualizing I/O de-vices on VMware workstation's hosted virtual machine moni-tor. In Proc. USENIX Annual Technical Conference, Boston,USA, June 25-30, 2001, pp.1-14.

[47] Adams K, Agesen O. A comparison of software and hardwaretechniques for x86 virtualization. SIGOPS Operating SystemReviews, December 2006, 40(5): 2-13.

[48] Kephart J O, Chess D M. The vision of autonomic computing.IEEE Computer, 2003, 36(1): 41-50.

[49] Bohra A, Neamtiu I, Gallard P, Sultan F, Iftode L. Remoterepair of operating system state using Backdoors. In Proc.Int. Conf. Autonomous Computing, New York, USA, May17-18, 2004, pp.256-263.

[50] Chen H, Yu J, Chen R, Zang B, Yew P C. Polus: A powerfullive updating system. In Proc. Int. Conf. Software Engi-neering, Minneapolis, USA, May 20-26, 2007, pp.271-281.

[51] Leangsuksun C, Liu T, Rao T, Scott S L, Libby R. A fail-ure predictive and policy-based high availability strategy forLinux high performance computing cluster. In Proc. the 5thLCI International Conference on Linux Clusters: The HPCRevolution 2004, Austin, USA, May 18-20, 2004, pp.18-20.

[52] Riebs A, Kirkwood M, Suchomski M, Eisentraut P, CliftJ, Wagner P. The open source database benchmark,http://osdb.sourceforge.net.

[53] Tridgell A. Dbench filesystem benchmark. http://samba.org/ftp/tridge/dbench/.

[54] McVoy L, Staelin C. lmbench: Portable tools for performanceanalysis. In Proc. USENIX Annual Technical Conference,San Diego, USA, January 22-26, 1996, pp.279-294.

[55] Tirumala A, Qin F, Dugan J, Ferguson J, Gibbs K. Iperf: TheTCP/UDP bandwidth measurement tool. http:// source-forge.net/projects/iperf/, 2004.

[56] Yang J, Sar C, Engler D. Explode: A lightweight, general sys-tem for finding serious storage system errors. In Proc. the 7thUsenix Symposium on Operating Systems Design and Imple-mentation, Seattle, USA, November 6-8, 2006, pp.131-146.
No related articles found!
Full text



[1] Wang Hui; Liu Dayou; Wang Yafei;. Sequential Back-Propagation[J]. , 1994, 9(3): 252 -260 .
[2] Wang Shijun; Wang Shulin;. Research and Design of a Fuzzy Neural Expert System[J]. , 1995, 10(2): 112 -123 .
[3] XIAO Limin; ZHU Mingfa;. Exploiting the Capabilities of the Interconnection Network on Dawning-1000[J]. , 1999, 14(1): 49 -55 .
[4] Imad Jawhar and Jie Wu. QoS Support in TDMA-Based Mobile Ad Hoc Networks[J]. , 2005, 20(6): 797 -810 .
[5] Cliff Reader. AVS Intellectual Property Rights (IPR) Policy[J]. , 2006, 21(3): 306 -309 .
[6] Chiou-Yng Lee, Jenn-Shyong Horng, and I-Chang Jou. Low-Complexity Bit-Parallel Multiplier over GF(2$^m$) Using Dual Basis Representation[J]. , 2006, 21(6): 887 -892 .
[7] Yong Xi, Ke-Wei Sha, Wei-Song Shi, Loren Schwiebert, and Tao Zhang. Probabilistic Adaptive Anonymous Authentication in Vehicular Networks[J]. , 2008, 23(6 ): 916 -928 .
[8] Varun Gupta and Jitender Kumar Chhabra. Package Coupling Measurement in Object-Oriented Software[J]. , 2009, 24(2): 273 -283 .
[9] Maryam Zarezadeh, Hamid Mala, Homa Khajeh. Preserving Privacy of Software-Defined Networking Policies by Secure Multi-Party Computation[J]. Journal of Computer Science and Technology, 2020, 35(4): 863 -874 .
[10] Jun-Wei Cao, (曹军威), Member, CCF, ACM, Senior Member, IEEE, Fan Zhang (张帆), Student Member, IEEE, Ke Xu (许可), Lian-Chen Liu (刘连臣) and Cheng Wu (吴澄). Formal Verification of Temporal Properties for Reduced Overhead in Grid Scientific Workflows[J]. , 2011, 26(6): 1017 -1030 .

ISSN 1000-9000(Print)

CN 11-2296/TP

Editorial Board
Author Guidelines
Journal of Computer Science and Technology
Institute of Computing Technology, Chinese Academy of Sciences
P.O. Box 2704, Beijing 100190 P.R. China
E-mail: jcst@ict.ac.cn
  Copyright ©2015 JCST, All Rights Reserved