ABSTRACT
Systems software like databases and language runtimes typically manage memory themselves to exploit application knowledge unavailable to the OS. Traditionally deployed on dedicated machines, they are designed to be statically configured with memory sufficient for peak load. In virtualization scenarios (cloud computing, server consolidation), however, static peak provisioning of RAM to applications dramatically reduces the efficiency and cost-saving benefits of virtualization. Unfortunately, existing memory "ballooning" techniques used to dynamically reallocate physical memory between VMs badly impact the performance of applications which manage their own memory. We address this problem by extending ballooning to applications (here, a database engine and Java runtime) so that memory can be efficiently and effectively moved between virtualized instances as the demands of each change over time. The results are significantly lower memory requirements to provide the same performance guarantees to a collocated set of VM running such applications, with minimal overhead or intrusive changes to application code.
- R. Alonso and A. W. Appel. An advisor for flexible working sets. In Proc. of the 1990 ACM SIGMETRICS conference on Measurement and modeling of computer systems, SIGMETRICS '90, pages 153--162, New York, NY, USA, 1990. ACM. Google ScholarDigital Library
- P. Barham, B. Dragovic, K. Fraser, S. Hand, T. Harris, A. Ho, R. Neugebauer, I. Pratt, and A. Warfield. Xen and the art of virtualization. In Proc. of the nineteenth ACM symposium on Operating systems principles, SOSP '03, pages 164--177, New York, NY, USA, 2003. ACM. Google ScholarDigital Library
- G. Candea, S. Kawamoto, Y. Fujiki, G. Friedman, and A. Fox. Microreboot -- A technique for cheap recovery. In Proc. of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6, OSDI'04, pages 3--3, Berkeley, CA, USA, 2004. USENIX Association. Google ScholarDigital Library
- S. Chen, A. Ailamaki, M. Athanassoulis, P. B. Gibbons, R. Johnson, I. Pandis, and R. Stoica. TPC-E vs. TPC-C: characterizing the new TPC-E benchmark via an I/O comparison study. SIGMOD Record, 39(3):5--10, Feb. 2011. Google ScholarDigital Library
- A. T. Clements, M. F. Kaashoek, and N. Zeldovich. Scalable address spaces using RCU balanced trees. In Proc. of the seventeenth international conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS XVII, pages 199--210, New York, NY, USA, 2012. ACM. Google ScholarDigital Library
- C. Curino, E. P. Jones, S. Madden, and H. Balakrishnan. Workload-aware database monitoring and consolidation. In Proc. of the 2011 ACM SIGMOD International Conference on Management of data, SIGMOD '11, pages 313--324, New York, NY, USA, 2011. ACM. Google ScholarDigital Library
- J. Giceva, T. Salomie, A. Schüpbach, G. Alonso, and T. Roscoe. COD: Database/Operating System Co-Design. In 6th Biennial Conference on Innovative Data Systems Research, CIDR '13. www.cidrdb.org, 2013.Google Scholar
- D. Gupta, S. Lee, M. Vrable, S. Savage, A. C. Snoeren, G. Varghese, G. M. Voelker, and A. Vahdat. Difference engine: harnessing memory redundancy in virtual machines. Comm. of ACM, 53(10):85--93, Oct. 2010. Google ScholarDigital Library
- J. Heo, X. Zhu, P. Padala, and Z. Wang. Memory overbooking and dynamic control of Xen virtual machines in consolidated environments. In Proc. of the 11th IFIP/IEEE international conference on Symposium on Integrated Network Management, IM'09, pages 630--637, Piscataway, NJ, USA, 2009. IEEE Press. Google ScholarDigital Library
- M. Hertz, S. Kane, E. Keudel, T. Bai, C. Ding, X. Gu, and J. E. Bard. Waste not, want not: resource-based garbage collection in a shared environment. In Proc. of the international symposium on Memory management, ISMM '11, pages 65--76, New York, NY, USA, 2011. ACM. Google ScholarDigital Library
- M. R. Hines, A. Gordon, M. Silva, D. Da Silva, K. Ryu, and M. Ben-Yehuda. Applications Know Best: Performance-Driven Memory Overcommit with Ginkgo. In Proc. of the 2011 IEEE Third International Conference on Cloud Computing Technology and Science, CLOUDCOM '11, pages 130--137, Washington, DC, USA, 2011. IEEE Computer Society. Google ScholarDigital Library
- InnoDB LRU Dump/Restore http://www.percona.com/docs/wiki/percona-server:features:innodb_lru_dump_restore, 29.11.11.Google Scholar
- G. Khanna, K. Beaty, G. Kar, and A. Kochut. Application Performance Management in Virtualized Server Environments. In Network Operations and Management Symposium, 2006. NOMS 2006. 10th IEEE/IFIP, NOMS '06, pages 373--381, Washington, DC, USA, April 2006. IEEE Computer Society.Google ScholarCross Ref
- R. Love. Linux Kernel Development, 3rd edition. Addison-Wesley, 2010. Google ScholarDigital Library
- R. Mcougall, W. Huang, and B. Corrie. Cooperative memory resource mamagent via application-level balloon. Patent Application US20110320682, 12 2011.Google Scholar
- G. Miłós, D. G. Murray, S. Hand, and M. A. Fetterman. Satori: enlightened page sharing. In Proc. of the 2009 conference on USENIX Annual technical conference, USENIX'09, pages 1--1, Berkeley, CA, USA, 2009. USENIX Association. Google ScholarDigital Library
- U. F. Minhas, S. Rajagopalan, B. Cully, A. Aboulnaga, K. Salem, and A. Warfield. RemusDB: Transparent High Availability for Database Systems. PVLDB, 4(11):738--748, Nov. 2011.Google Scholar
- V. Narasayya, S. Das, M. Syamala, B. Chandramouli, and S. Chaudhuri. SQLVM: Performance Isolation in Multi-Tenant Relational Database-as-a-Service. In 6th Biennial Conference on Innovative Data Systems Research, CIDR '13. www.cidrdb.org, 2013.Google Scholar
- Lawrence Berkeley National Lab: Nux toolkit. http://acs.lbl.gov/software/nux/api/nux/xom/sandbox/XQueryBenchmark.html, 5.01.12.Google Scholar
- O. Ozmen, K. Salem, J. Schindler, and S. Daniel. Workload-aware storage layout for database systems. In Proc. of the 2010 ACM SIGMOD International Conference on Management of data, SIGMOD '10, pages 939--950, New York, NY, USA, 2010. ACM. Google ScholarDigital Library
- P. Padala, K.-Y. Hou, K. G. Shin, X. Zhu, M. Uysal, Z. Wang, S. Singhal, and A. Merchant. Automated control of multiple virtualized resources. In Proc. of the 4th ACM European conference on Computer systems, EuroSys '09, pages 13--26, New York, NY, USA, 2009. ACM. Google ScholarDigital Library
- Running SQL Server with Hyper-V Dynamic Memory. http://msdn.microsoft.com/en-us/library/hh372970.aspx, 17.10.12.Google Scholar
- Saxon XSLT and XQuery Processor. http://sourceforge.net/projects/saxon/, 5.03.12.Google Scholar
- A. Schmidt, F. Waas, M. Kersten, M. J. Carey, I. Manolescu, and R. Busse. XMark: a benchmark for XML data management. In Proc. of the 28th international conference on Very Large Data Bases, VLDB '02, pages 974--985. VLDB Endowment, 2002. Google ScholarDigital Library
- A. A. Soror, U. F. Minhas, A. Aboulnaga, K. Salem, P. Kokosielis, and S. Kamath. Automatic virtual machine configuration for database workloads. ACM Trans. Database Syst., 35(1):7:1--7:47, Feb. 2008. Google ScholarDigital Library
- TPC-E. http://www.tpc.org/tpce/, 17.10.12.Google Scholar
- TPC-H. http://www.tpc.org/tpch/, 17.10.12.Google Scholar
- P. Unterbrunner, G. Giannikis, G. Alonso, D. Fauser, and D. Kossmann. Predictable performance for unpredictable workloads. Proc. VLDB Endow., 2(1):706--717, Aug. 2009. Google ScholarDigital Library
- C. A. Waldspurger. Memory resource management in VMware ESX server. SIGOPS Oper. Syst. Rev., 36(SI):181--194, Dec. 2002. Google ScholarDigital Library
- T. Wood, P. Shenoy, A. Venkataramani, and M. Yousif. Black-box and gray-box strategies for virtual machine migration. In Proc. of the 4th USENIX conference on Networked systems design & implementation, NSDI'07, pages 17--17, Berkeley, CA, USA, 2007. USENIX Association. Google ScholarDigital Library
- Xen Hypervisor 4.1. http://xen.org/, 29.11.11.Google Scholar
- T. Yang, E. D. Berger, S. F. Kaplan, and J. E. B. Moss. CRAMM: virtual memory support for garbage-collected applications. In Proc. of the 7th symposium on Operating systems design and implementation, OSDI '06, pages 103--116, Berkeley, CA, USA, 2006. USENIX Association. Google ScholarDigital Library
- W. Zhao, Z. Wang, and Y. Luo. Dynamic memory balancing for virtual machines. SIGOPS Oper. Syst. Rev., 43(3):37--47, July 2009. Google ScholarDigital Library
Index Terms
- Application level ballooning for efficient server consolidation
Recommendations
Dynamic Memory Pressure Aware Ballooning
MEMSYS '15: Proceedings of the 2015 International Symposium on Memory SystemsHardware virtualization is a major component of large scale server and data center deployments due to their facilitation of server consolidation and scalability. Virtualization, however, comes at a high cost in terms of system main memory utilization. ...
Characterization & analysis of a server consolidation benchmark
VEE '08: Proceedings of the fourth ACM SIGPLAN/SIGOPS international conference on Virtual execution environmentsVirtualization is already becoming ubiquitous in data centers for the consolidation of multiple workloads on a single platform. However, there are very few performance studies of server consolidation workloads in the literature. In this paper, our goal ...
Server consolidation with migration control for virtualized data centers
Virtualization has become a key technology for simplifying service management and reducing energy costs in data centers. One of the challenges faced by data centers is to decide when, how, and which virtual machines (VMs) have to be consolidated into a ...
Comments