Abstract

We propose a new, principled approach to adaptive heap sizing based on control theory. We review current state-of-the-art heap sizing mechanisms, as deployed in Jikes RVM and HotSpot. We then formulate heap sizing as a control problem, apply and tune a standard controller algorithm, and evaluate its performance on a set of well-known benchmarks. We find our controller adapts the heap size more responsively than existing mechanisms. This responsiveness allows tighter virtual machine memory footprints while preserving target application throughput, which is ideal for both embedded and utility computing domains. In short, we argue that formal, systematic approaches to memory management should be replacing ad-hoc heuristics as the discipline matures. Control-theoretic heap sizing is one such systematic approach.
- Experimental resources. http://sf.net/p/jikesrvm/research-archive/40.Google Scholar
- O. Agmon Ben-Yehuda, M. Ben-Yehuda, A. Schuster, and D. Tsafrir. The resource-as-a-service (RaaS) cloud. In USENIX Conference on Hot Topics in Cloud Computing, 2012. Google Scholar
Digital Library
- R. Alonso and A. W. Appel. An advisor for flexible working sets. In Proceedings of the 1990 ACM SIGMETRICS Conference on Measurement and Modeling of Computer Systems, 1990. Google Scholar
Digital Library
- B. Alpern, C. R. Attanasio, J. J. Barton, M. G. Burke, P. Cheng, J.-D. Choi, A. Cocchi, S. J. Fink, D. Grove, M. Hind, S. F. Hummel, D. Lieber, V. Litvinov, M. F. Mergen, T. Ngo, J. R. Russell, V. Sarkar, M. J. Serrano, J. C. Shepherd, S. E. Smith, V. C. Sreedhar, H. Srinivasan, and J. Whaley. The Jalapeño virtual machine. IBM Systems Journal, 39(1), 2000. Google Scholar
Digital Library
- B. Alpern, S. Augart, S. M. Blackburn, M. Butrico, A. Cocchi, P. Cheng, J. Dolby, S. Fink, D. Grove, M. Hind, K. S. McKinley, M. Mergen, J. E. B. Moss, T. Ngo, V. Sarkar, and M. Trapp. The Jikes research virtual machine project: Building an open source research community. IBM Systems Journal, 44(2):1--19, 2005. Google Scholar
Digital Library
- M. Armbrust, A. Fox, R. Griffith, A. D. Joseph, R. Katz, A. Konwinski, G. Lee, D. Patterson, A. Rabkin, I. Stoica, and M. Zaharia. A view of cloud computing. Communications of the ACM, 53:50--58, 2010. Google Scholar
Digital Library
- M. Arnold, M. Vechev, and E. Yahav. QVM: an efficient runtime for detecting defects in deployed systems. In Proceedings of the 23rd ACM SIGPLAN Symposium on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA), pages 143--162. ACM, 2008. Google Scholar
Digital Library
- S. M. Blackburn, Perry Cheng, and K. S. McKinley. Oil and water? high performance garbage collection in Java with MMTk. In Proceedings of the 26th International Conference on Software Engineering, pages 137--146. ACM, 2004. Google Scholar
Digital Library
- S. M. Blackburn, R. Garner, C. Hoffman, A. M. Khan, K. S. McKinley, R. Bentzur, A. Diwan, D. Feinberg, D. Frampton, S. Z. Guyer, M. Hirzel, A. Hosking, M. Jump, H. Lee, J. E. B. Moss, A. Phansalkar, D. Stefanović, T. VanDrunen, D. von Dincklage, and B. Wiedermann. The DaCapo benchmarks: Java benchmarking development and analysis. In Proceedings of the ACM SIGPLAN Symposium on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, 2006. Google Scholar
Digital Library
- S. M. Blackburn, R. E. Jones, K. S. McKinley, and J. E. B. Moss. Beltway: Getting around garbage collection gridlock. In ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI), pages 153--164. ACM, 2002. Google Scholar
Digital Library
- H.J. Boehm and M. Weiser. Garbage collection in an uncooperative environment. Software: Practice and Experience, 18(9):807--820, 1988. Google Scholar
Digital Library
- T. Brecht, E. Arjomandi, C. Li, and H. Pham. Controlling garbage collection and heap growth to reduce the execution time of Java applications. ACM Transactions on Programming Languages and Systems, 28:908--941, 2006. Google Scholar
Digital Library
- R. Buyya, S. Y. Chee, and S. Venugopal. Market-oriented cloud computing: Vision, hype, and reality for delivering IT services as computing utilities. In Proceedings of High Performance Computing and Communications, pages 5--13, 2008. Google Scholar
Digital Library
- A. Datta, M.T. Ho, and S.P. Bhattacharyya. Structure and synthesis of PID controllers. Springer, 2000.Google Scholar
Cross Ref
- E. Duesterwald, C. Cascaval, and Sandhya Dwarkadas. Characterizing and predicting program behavior and its variability. In Proceedings of Parallel Architectures and Compilation Techniques, 2003. Google Scholar
Digital Library
- D. Durkee. Why cloud computing will never be free. Queue, 8:20:20--20:29. Google Scholar
Digital Library
- N. Gandhi, D.M. Tilbury, Y. Diao, J. Hellerstein, and S. Parekh. MIMO control of an Apache web server: modeling and controller design. In Proceedings of the American Control Conference, 2002.Google Scholar
Cross Ref
- David Grove. Private Communication, 2011.Google Scholar
- C. Grzegorczyk, S. Soman, C. Krintz, and R. Wolski. Isla vista heap sizing: Using feedback to avoid paging. In Proceedings of the International Symposium on Code Generation and Optimization, 2007. Google Scholar
Digital Library
- J. Hellerstein, S. Singhal, and Qian Wang. Research challenges in control engineering of computing systems. IEEE Transactions on Network and Service Management, 6(4):206--211, 2009. Google Scholar
Digital 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 Proceedings of the 11th ACM SIGPLAN International Symposium on Memory Management (ISMM). Google Scholar
Digital Library
- R. Jones, A. Hosking, and E. Moss. The Garbage Collection Handbook: The Art of Automatic Memory Management. Chapman & Hall, 2012. Google Scholar
Digital Library
- C. Karamanolis, M. Karlsson, and X. Zhu. Designing controllable computer systems. In Proceedings of the 10th conference on Hot Topics in Operating Systems, 2005. Google Scholar
Digital Library
- N. S. Nise. Control Systems Engineering. John Wiley & Sons, Inc., 3rd edition, 2000. Google Scholar
Digital Library
- P. Padala, K. G. Shin, X. Zhu, M. Uysal, Z. Wang, S. Singhal, A. Merchant, and K. Salem. Adaptive control of virtualized resources in utility computing environments. In Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems. ACM, 2007. Google Scholar
Digital Library
- S. P. Reiss. Dynamic detection and visualization of software phases. In Proceedings of the 3rd International Workshop on Dynamic Analysis. ACM, 2005. Google Scholar
Digital Library
- J. Singer, R. E. Jones, G. Brown, and M. Luján. The economics of garbage collection. In Proceedings of the 10th ACM SIGPLAN International Symposium on Memory Management (ISMM). ACM, 2010. Google Scholar
Digital Library
- S. Soman, C. Krintz, and D. F. Bacon. Dynamic selection of application-specific garbage collectors. In Proceedings of the 4th ACM SIGPLAN International Symposium on Memory Management (ISMM). ACM, 2004. Google Scholar
Digital Library
- A. J. Storm, C. Garcia-Arellano, S. S. Lightstone, Y. Diao, and M. Surendra. Adaptive self-tuning memory in DB2. In Proceedings of the 32nd International Conference on Very Large Data Bases, 2006. Google Scholar
Digital Library
- Sun. Garbage collector ergonomics. http://docs.oracle.com/javase/1.5.0/docs/guide/vm/gc-ergonomics.html.Google Scholar
- K. Sun, Y. Li, M. Hogstrom, and Y. Chen. Sizing multi-space in heap for application isolation. In Companion to the 21st ACM SIGPLAN Symposium on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA). ACM, 2006. Google Scholar
Digital Library
- Y.C. Tay and X.R. Zong. A page fault equation for dynamic heap sizing. In Proceedings of the first joint WOSP/SIPEW International Conference on Performance Engineering, 2010. Google Scholar
Digital Library
- D. Vengerov. Modeling, analysis and throughput optimization of a generational garbage collector. In Proceedings of the 9th ACM SIGPLAN International Symposium on Memory Management (ISMM). ACM, 2009. Google Scholar
Digital Library
- T. Yang, E. D. Berger, S. F. Kaplan, and J. E. B. Moss. Cramm: virtual memory support for garbage-collected applications. In Proceedings of the 7th Symposium on Operating Systems Design and Implementation. ACM, 2006. Google Scholar
Digital Library
- T. Yang, E.D. Berger, M. Hertz, S.F. Kaplan, and J.E.B. Moss. Automatic heap sizing: Taking real memory into account. In Proceedings of the 4th ACM SIGPLAN International Symposium on Memory Management (ISMM). ACM, 2004. Google Scholar
Digital Library
- C. Zhang, K. Kelsey, X. Shen, C. Ding, M. Hertz, and M. Ogihara. Program-level adaptive memory management. In Proceedings of the 5th ACM SIGPLAN International Symposium on Memory Management (ISMM). ACM, 2006. Google Scholar
Digital Library
- X. Zhu, M. Uysal, Z. Wang, S. Singhal, A. Merchant, P. Padala, and K. Shin. What does control theory bring to systems research? SIGOPS Operating Systems Review, 43:62--69, 2009. Google Scholar
Digital Library
- J. G. Ziegler and N. B. Nichols. Optimum settings for automatic controllers. Transactions of the American Society of Mechanical Engineers, 64:759--768, 1942.Google Scholar
Index Terms
Control theory for principled heap sizing
Recommendations
Automatic heap sizing: taking real memory into account
ISMM '04: Proceedings of the 4th international symposium on Memory managementHeap size has a huge impact on the performance of garbage collected applications. A heap that barely meets the application's needs causes excessive GC overhead, while a heap that exceeds physical memory induces paging. Choosing the best heap size <i>a ...
Control theory for principled heap sizing
ISMM '13: Proceedings of the 2013 international symposium on memory managementWe propose a new, principled approach to adaptive heap sizing based on control theory. We review current state-of-the-art heap sizing mechanisms, as deployed in Jikes RVM and HotSpot. We then formulate heap sizing as a control problem, apply and tune a ...
Control theory for principled heap sizing
ISMM '13: Proceedings of the 2013 international symposium on memory managementWe propose a new, principled approach to adaptive heap sizing based on control theory. We review current state-of-the-art heap sizing mechanisms, as deployed in Jikes RVM and HotSpot. We then formulate heap sizing as a control problem, apply and tune a ...







Comments