Issue No.04 - Fourth Quarter (2012 vol.5)
pp: 497-511
Qian Zhu , Accenture Technologies Lab, San Jose
Gagan Agrawal , Ohio State University, Columbus
The recent emergence of clouds is making the vision of utility computing realizable, i.e., computing resources and services can be delivered, utilized, and paid for as utilities such as water or electricity. This, however, creates new resource provisioning problems. Because of the pay-as-you-go model, resource provisioning should be performed in a way to keep resource costs to a minimum, while meeting an application's needs. In this work, we focus on the use of cloud resources for a class of adaptive applications, where there could be application-specific flexibility in the computation that may be desired. Furthermore, there may be a fixed time-limit as well as a resource budget. Within these constraints, such adaptive applications need to maximize their Quality of Service (QoS), more precisely, the value of an application-specific benefit function, by dynamically changing adaptive parameters. We present the design, implementation, and evaluation of a framework that can support such dynamic adaptation for applications in a cloud computing environment. The key component of our framework is a multi-input-multi-output feedback control model-based dynamic resource provisioning algorithm which adopts reinforcement learning to adjust adaptive parameters to guarantee the optimal application benefit within the time constraint. Then a trained resource model changes resource allocation accordingly to satisfy the budget. We have evaluated our framework with two real-world adaptive applications, and have demonstrated that our approach is effective and causes a very low overhead.
Adaptation models, Resource management, Pricing, Computational modeling, Heuristic algorithms, Dynamic scheduling, Time factors, control theory, Cloud computing, adaptive applications
Qian Zhu, Gagan Agrawal, "Resource Provisioning with Budget Constraints for Adaptive Applications in Cloud Environments", IEEE Transactions on Services Computing, vol.5, no. 4, pp. 497-511, Fourth Quarter 2012, doi:10.1109/TSC.2011.61
[1] Cloud Computing at SCS, cloud-computing-at-scs.shtml, 2012.
[2] Amazon Elastic Compute Cloud,, 2012.
[3] Azure Services Platform, default.mspx , 2012.
[4] Cloud Computing Testbed, stories/2008/03/25autonomics_0326.html , 2012.
[5] Google App Engine,, 2012.
[6] Magellan, , 2012.
[7] Nimbus, http:/, 2012.
[8] Open Cirrus: The HP/Intel/Yahoo! Open Cloud Computing Research Testbed, https:/, 2012.
[9] Open Nebula, http:/, 2012.
[10] B. Abrahao, V. Almeida, J.A. J, A. Zhang, D. Beyer, and F. Safai, "Self-Adaptive SLA-Driven Capacity Management for Internet Services," Proc. 10th IEEE/IFIP Network Operations and Management Symp. (NOMS '06), pp. 557-568, Apr. 2006.
[11] V. Adve, V.V. Lam, and B. Ensink, "Support for Adaptive Distributed Applications," Proc. SIGPLAN Workshop Optimization of Middleware (OM) and Distributed Systems, June 2001.
[12] J. Almeida, V. Almeida, D. Ardagna, C. Francalanci, and M. Trubian, "Resource Management in the Autonomic Service-Oriented Architecture," Proc. Third Int'l Conf. Autonomic Computing (ICAC '06), pp. 84-92, June 2006.
[13] S. Bennett, A History and Control Engineering 1930-1955. Peter Peregrinus Ltd., 1993.
[14] V. Bhargavan, K.-W. Lee, S. Lu, S. Ha, J.R. Li, and D. Dwyer, "The Timely Adaptive Resource Management Architecture," IEEE Personal Comm. Magazine, vol. 5, no. 4, pp. 20-31, Aug. 1998.
[15] H.F. Chen, W.X. Zhang, and G.F. Jiang, "Experience Transfer for the Configuration Tuning in Large-Scale Computing Systems," IEEE Trans. Knowledge and Data Eng., vol. 23, no. 3, pp. 388-401, Mar. 2011.
[16] D. Chiu, A. Shetty, and G. Agrawal, "Elastic Cloud Caches for Accelerating Service-Oriented Computations," Proc. 24th Int'l Conf. High Performance Computing and Networking (SC '10), Nov. 2010.
[17] S. Das, D. Agrawal, and A.E. Abbadi, "Elastras: An Elastic Transactional Data Store in the Cloud," Proc. Workshop Hot Topics in Cloud (HotCloud), 2009.
[18] Y. Diao, N. Gandhi, J.L. Hellerstein, S. Parekh, and D.M. Tilbury, "MIMO Control of an Apache Web Server: Modeling and Controller Design," Proc. Am. Control Conf. (ACC '02), pp. 4922-4927, May 2002.
[19] D. Nurmi, R. Wolski, C. Grzegorczyk, G. Obertelli, S. Soman, L. Youseff, and D. Zagorodnov, "The Eucalyptus Open-Source Cloud-Computing System," Proc. Cloud Computing and Its Applications, Oct. 2008.
[20] D. Parkhill, The Challenge of Computer Utility. Addison-Wessley, 1966.
[21] R.A. Drebin, L. Carpenter, and P. Hanrahan, "Volume Rendering," Proc. 15th Ann. Conf. Computer Graphics and Interactive Techniques, pp. 65-74, 1988.
[22] S.K. Garg, R. Buyya, and H.J. Siegel, "Scheduling Parallel Applications on Utility Grids: Time and Cost Trade-Off Management," Proc. 32nd Australasian Computer Science Conf. (ACSC '09), pp. 139-147, Jan. 2009.
[23] A. Gounaris, N.W. Paton, A.A.A. Fernandes, and R. Sakellariou, "Adaptive Query Processing: A Survey," Proc. 19th British Nat'l Conf. Databases: Advances in Databases (BNCOD), 2002.
[24] G. Singh, C. Kesselman, and E. Deelman, "A Provisioning Model and Its Comparison with Best-Effort for Performance-Cost Optimization in Grids," Proc. 16th IEEE Int'l Symp. High Performance Distributed Computing (HPDC '07), June 2007.
[25] J. Guitart, J. Torres, and E. Ayguad, "A Survey on Performance Management for Internet Applications," Concurrency and Computation: Practice and Experience, vol. 22, pp. 68-106, 2010.
[26] J. Heo, X. Zhu, P. Padala, and Z. Wang, "Memory Overbooking and Dynamic Control of Xen Virtual Machines in Consolidated Environments," Proc. IFIP/IEEE Int'l Symp. Integrated Network Management (IM '09), pp. 630-637, June 2009.
[27] A.K. Jain and R.C. Dubes, Algorithms for Clustering Data. Prentice Hall, 1988.
[28] J. Xu, M. Zhao, J.B. Fortes, R. Carpenter, and M. Yousif, "On the Use of Fuzzy Modeling in Virtualized Data Center Management," Proc. Fourth Int'l Conf. Autonomic Computing (ICAC '07), June 2007.
[29] J. Yu and R. Buyya, "A Budget Constrained Scheduling of Workflow Applications on Utility Grids Using Genetic Algorithms," Proc. Workshop Workflows in Support of Large-Scale Science, June 2006.
[30] Q. Li, Q. Hao, L. Xiao, and Z. Li, "An Integrated Approach to Automatic Management of Virtualized Resources in Cloud Environments," The Computer J., vol. 54, pp. 905-919, 2011.
[31] H. Lim, S. Babu, and J. Chase, "Automated Control for Elastic Storage," Proc. Int'l Conf. Autonomic Computing (ICAC), June 2010.
[32] H.C. Lim, S. Babu, J.S. Chase, and S.S. Parekh, "Automated Control in Cloud Computing: Challenges and Opportunities," Proc. First Workshop Automated Control for Datacenters and Clouds (ACDC '09), pp. 13-18, June 2009.
[33] M. Armbrust, A. Fox, R. Griffith, A.D. Joseph, R.H. Katz, A. Konwinski, G. Lee, D.A. Patterson, A. Rabkin, I. Stoica, and M. Zaharia, "Above the Clouds: A Berkeley View of Cloud Computing," Technical Report TR-2007-169, Dept. of Electrical Eng. and Computer Science, Univ. of California, Berkeley, Feb. 2009.
[34] J. Norris, K. Coleman, A. Fox, and G. Candea, "OnCall: Defeating Spikes with a Free-Market Application Cluster," Proc. First Int'l Conf. Autonomic Computing (ICAC '04), pp. 198-205, May 2004.
[35] 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," Proc. 19th ACM Symp. Operating Systems Principles (SOSP '03), pp. 64-177, 2003.
[36] C. Poellabauer, H. Abbasi, and K. Schwan, "Cooperative Run-Time Management of Adaptive Applications and Distributed Resources," Proc. 10th ACM Int'l Conf. Multimedia, 2002.
[37] 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," Proc. Fourth ACM SIGOPS/EuroSys European Conf. Computer Systems (Eurosys '09), pp. 13-26, 2009.
[38] Q. Zhu and G. Agrawal, "An Adaptive Middleware for Supporting Time-Critical Event Response," Proc. Fifth Int'l Conf. Autonomic Computing (ICAC '08), June 2008.
[39] G. Reig, J. Alonso, and J. Guitart, "Prediction of Job Resource Requirements for Deadline Schedulers to Manage High-Level SLAs on the Cloud," Proc. IEEE Ninth Int'l Symp. Network Computing and Appl. (NCA '10), pp. 162-167, July 2010.
[40] R. Sakellariou, H. Zhao, E. Tsiakkouri, and M.D. Dikaiakos, "Scheduling Workflows with Budget Constraints," Integrated Research in GRID Computing, 2007.
[41] S. Agrawal, Y. Dashora, M.K. Tiwari, and Y. Son, "Interactive Particle Swarm: A Pareto-Adaptive Metaheuristic to Multiobjective Optimization," IEEE Trans. System, Man and Cybernetics, vol. 38, no. 2, pp. 258-277, Mar. 2008.
[42] A. Sangpetch, A. Turner, and H. Kim, "How to Tame Your Vms: An Automated Control System for Virtualized Services," Proc. 24th Large Installation System Administration Conf., Nov. 2010.
[43] A.J. Smola and B. Schoolkopf, "A Tutorial on Support Vector Regression," J. Statistics and Computing, vol. 14, no. 3, pp. 199-222, 2004.
[44] S.M. Park and M. Humphrey, "Feedback-Controlled Resource Sharing for Predictable Escience," Proc. 22nd Int'l Conf. High Performance Computing and Networking (SC '08), Nov. 2008.
[45] D.C. Steere, A. Goel, J. Gruenberg, D. McNamee, C. Pu, and J. Walpole, "A Feedback-Driven Proportion Allocator for Real-Rate Scheduling," Proc. Symp. Operating Systems Design and Implementation (OSDI), Dec. 1999.
[46] J.G. Ziegler and N.B. Nichols, "Optimum Settings for Automatic Controllers," Trans. ASME, vol. 64, pp. 759-768, 1942.