skip to main content
10.1145/2818950.2818967acmotherconferencesArticle/Chapter ViewAbstractPublication PagesmemsysConference Proceedingsconference-collections
research-article

Dynamic Memory Pressure Aware Ballooning

Authors Info & Claims
Published:05 October 2015Publication History

ABSTRACT

Hardware 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. Current virtual machine (VM) memory management solutions impose a high performance penalty and are oblivious to the operating regime of the system. Therefore, there is a great need for low-impact VM memory management techniques which are aware of and reactive to current system state, to drive down the overheads of virtualization.

We observe that the host machine operates under different memory pressure regimes, as the memory demand from guest VMs changes dynamically at runtime. Adapting to this runtime system state is critical to reduce the performance cost of VM memory management. In this paper, we propose a novel dynamic memory management policy called Memory Pressure Aware (MPA) ballooning. MPA ballooning dynamically allocates memory resources to each VM based on the current memory pressure regime. Moreover, MPA ballooning proactively reacts and adapts to sudden changes in memory demand from guest VMs. MPA ballooning requires neither additional hardware support, nor incurs extra minor page faults in its memory pressure estimation. We show that MPA ballooning provides an 13.2% geomean speed-up versus the current ballooning techniques across a set of application mixes running in guest VMs; often yielding performance nearly identical to that of a non-memory constrained system.

References

  1. 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 ACM SIGOPS Operating Systems Review (SOSP), volume 37, pages 164--177, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. T. W. Barr, A. L. Cox, and S. Rixner. Spectlb: a mechanism for speculative address translation. In Computer Architecture (ISCA), 2011 38th Annual International Symposium on, pages 307--317. IEEE, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. C. Bienia, S. Kumar, J. P. Singh, and K. Li. The parsec benchmark suite: characterization and architectural implications. In Proceedings of the 17th International conference on Parallel Architectures and Complication Techniques (PACT), pages 72--81, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. D. P. Bovet and M. Cesati. Understanding the Linux kernel. "O'Reilly Media, Inc.", 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. R. Cloud. Rackspace Cloud. http://www.rackspacecloud.com, 2010.Google ScholarGoogle Scholar
  6. A. EC2. Amazon Elastic Compute Cloud (Amazon EC2). http://aws.amazon.com/ec2/, 2010.Google ScholarGoogle Scholar
  7. A. Gordon, M. Hines, D. Da Silva, M. Ben-Yehuda, M. Silva, and G. Lizarraga. Ginkgo: Automated, application-driven memory overcommitment for cloud computing. Proc. RESoLVE, 2011.Google ScholarGoogle Scholar
  8. I. Habib. Virtualization with kvm. Linux Journal, 2008(166):8, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. A. Inc. Page lists in the kernel. https://developer.apple.com/library/mac/documentation/Performance/Conceptual/ManagingMemory/Articles/AboutMemory.html, 2013.Google ScholarGoogle Scholar
  10. Intel. Intel 64 and ia-32 architectures software developer's manual. 3A:125--136, 2014.Google ScholarGoogle Scholar
  11. M. Lee, A. S. Krishnakumar, P. Krishnan, N. Singh, and S. Yajnik. Supporting soft real-time tasks in the Xen hypervisor. In Proceedings of the 6th ACM SIGPLAN/SIGOPS International conference on Virtual Execution Environments (VEE), pages 97--108, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. P. Lu and K. Shen. Virtual machine memory access tracing with hypervisor exclusive cache. In Usenix Annual Technical Conference, pages 29--43, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. D. Magenheimer. Add self-ballooning to balloon driver. Discussion on Xen Development mailing list and personal communication, 2008.Google ScholarGoogle Scholar
  14. D. Magenheimer, C. Mason, D. McCracken, and K. Hackel. Transcendent memory and linux. In Proceedings of the Linux Symposium, pages 191--200, 2009.Google ScholarGoogle Scholar
  15. VMware. Understanding memory resource management in vmware vsphere 5.0. In Technical White Paper. VMware, 2011.Google ScholarGoogle Scholar
  16. C. A. Waldspurger. Memory resource management in vmware esx server. In ACM SIGOPS Operating Systems Review, pages 181--194, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. C. A. Waldspurger and W. E. Weihl. Lottery scheduling: Flexible proportional-share resource management. In Proceedings of the 1st USENIX conference on Operating Systems Design and Implementation, page 1. USENIX Association, 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. W. Zhao, Z. Wang, and Y. Luo. Dynamic memory balancing for virtual machines. ACM SIGOPS Operating Systems Review, 43(3):37--47, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. P. Zhou, V. Pandey, J. Sundaresan, A. Raghuraman, Y. Zhou, and S. Kumar. Dynamic tracking of page miss ratio curve for memory management. In ACM SIGOPS Operating Systems Review, volume 38, pages 177--188. ACM, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Dynamic Memory Pressure Aware Ballooning

                    Recommendations

                    Comments

                    Login options

                    Check if you have access through your login credentials or your institution to get full access on this article.

                    Sign in
                    • Published in

                      cover image ACM Other conferences
                      MEMSYS '15: Proceedings of the 2015 International Symposium on Memory Systems
                      October 2015
                      278 pages
                      ISBN:9781450336048
                      DOI:10.1145/2818950

                      Copyright © 2015 ACM

                      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

                      Publisher

                      Association for Computing Machinery

                      New York, NY, United States

                      Publication History

                      • Published: 5 October 2015

                      Permissions

                      Request permissions about this article.

                      Request Permissions

                      Check for updates

                      Qualifiers

                      • research-article
                      • Research
                      • Refereed limited

                    PDF Format

                    View or Download as a PDF file.

                    PDF

                    eReader

                    View online with eReader.

                    eReader