SelfElastic: Combinando Elasticidade Reativa e Proativa para Aplicações de Alto Desempenho
Abstract
Cloud elasticity can bring benefits to High Performance Computing, providing a better use of resources and also reducing the execution time of applications. The most common approaches use threshold-based reactive elasticity or time-consuming proactive elasticity. However, both present at least one problem related to the need of a previous user experience, completion of parameters or design for a specific infrastructure and workload setting. In this context, we developed a self-organizing hybrid elasticity model for parallel applications named SelfElastic. The proposal presents a closed control loop elasticity architecture that adapts at runtime the thresholds' values. Based on SelfElastic, we developed a prototype in which the results were promising in terms of application execution time and cost when compared to a non-elastic execution.References
Beernaert, L., Matos, M., Vilaça, R., and Oliveira, R. (2012). Automatic elasticity in Openstack. In Proceedings of the Workshop on Secure and Dependable Middleware for Cloud Monitoring and Management, SDMCMM '12, pages 2:1–2:6, New York, NY, USA. ACM.
Chiu, D. and Agrawal, G. (2010). Evaluating caching and storage options on the Amazon Web Services cloud. In Grid Computing (GRID), 2010 11th IEEE/ACM Int. Conf. on, pages 17–24. IEEE.
Comanescu, M. (2012). Implementation of time-varying observers used in direct eld orientation of motor drives by trapezoidal integration. In Power Electronics, Machines and Drives (PEMD 2012), 6th IET Int. Conf. on, pages 1–6. IET. Copil, G., Moldovan, D., Truong, H.-L., and Dustdar, S. (2013). Sybl: An extensible language for controlling elasticity in cloud applications. In Cluster, Cloud and Grid Computing (CCGrid), 2013 13th IEEE/ACM Int. Symposium on, pages 112–119. IEEE.
Dustdar, S., Gambi, A., Krenn, W., and Nickovic, D. (2015). A pattern-based formalization of cloud-based elastic systems. In Proceedings of the Seventh Int. Workshop on Principles of Engineering Service-Oriented and Cloud Systems, PESOS '15, pages 31–37, Piscataway, NJ, USA. IEEE Press.
Farokhi, S., Jamshidi, P., Brandic, I., and Elmroth, E. (2015). Self-adaptation challenges for cloud-based applications : A control theoretic perspective. In 10th Int. Workshop on Feedback Computing (Feedback Computing 2015). ACM.
Herbst, N. R., Kounev, S., Weber, A., and Groenda, H. (2015). Bungee: An elasticity benchmark for self-adaptive IaaS cloud environments. In Proceedings of the 10th Int. Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS '15, pages 46–56, Piscataway, NJ, USA. IEEE Press.
Imai, S., Chestna, T., and Varela, C. A. (2012). Elastic scalable cloud computing using application-level migration. In Proceedings of the 2012 IEEE/ACM Fifth Int. Conf. on Utility and Cloud Computing, UCC '12, pages 91–98, Washington, DC, USA. IEEE Computer Society.
Jackson, K. R., Ramakrishnan, L., Muriki, K., Canon, S., Cholia, S., Shalf, J., Wasserman, H. J., and Wright, N. J. (2010). Performance analysis of high performance computing applications on the Amazon Web Services cloud. In Proceedings of the 2010 IEEE Second Int. Conf. on Cloud Computing Technology and Science, CLOUDCOM '10, pages 159–168, Washington, DC, USA. IEEE Computer Society.
Lorido-Botran, T., Miguel-Alonso, J., and Lozano, J. (2014). A review of autoscaling techniques for elastic applications in cloud environments. Journal of Grid Computing, 12(4):559–592.
Mariani, S., Truong, H.-L., Copil, G., Omicini, A., and Dustdar, S. (2014). Coordination-aware elasticity. In 7th IEEE/ACM Int. Conf. on Utility and Cloud Computing (UCC 2014), pages 56–63, London, UK. IEEE Computer Society. Netto, M. A. S., Cardonha, C., Cunha, R. L. F., and Assuncao, M. D. (2014). Evaluating auto-scaling strategies for cloud computing environments. In IEEE 22nd Int. Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems, MASCOTS 2014, Paris, France, September 9-11, 2014, pages 187–196. IEEE.
Nikravesh, A. Y., Ajila, S. A., and Lung, C.-H. (2015). Towards an autonomic autoscaling prediction system for cloud resource provisioning. In Proceedings of the 10th Int. Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS '15, pages 35–45, Piscataway, NJ, USA. IEEE Press.
Rajan, D., Canino, A., Izaguirre, J. A., and Thain, D. (2011). Converting a high performance application to an elastic cloud application. In Proceedings of the 2011 IEEE Third Int. Conf. on Cloud Computing Technology and Science, CLOUDCOM '11, pages 383–390, Washington, DC, USA. IEEE Computer Society.
Raveendran, A., Bicer, T., and Agrawal, G. (2011). A framework for elastic execution of existing MPI programs. In Proceedings of the 2011 IEEE Int. Symposium on Parallel and Distributed Processing Workshops and PhD Forum, IPDPSW '11, pages 940–947, Washington, DC, USA. IEEE Computer Society.
Righi, R. d. R., Rodrigues, V. F., Costa, C. A. d., Galante, G., Bona, L. C. E. d., and Ferreto, T. (2016). Autoelastic: Automatic resource elasticity for high performance applications in the cloud. IEEE Transactions on Cloud Computing, 4(1):6–19.
Rolo, E., Birck, F., Diener, M., Carissimi, A., and Navaux, P. (2012). EvaluIn Cloud ating high performance computing on the Windows Azure platform. Computing (CLOUD), 2012 IEEE 5th Int. Conf. on, pages 803 –810. IEEE. Spinner, S., Kounev, S., Zhu, X., Lu, L., Uysal, M., Holler, A., and Grith, R. (2014). Runtime vertical scaling of virtualized applications via online model estimation. In Proceedings of the 2014 IEEE 8th Int. Conf. on Self-Adaptive and Self-Organizing Systems (SASO). IEEE.
Tanenbaum, A. (2003). Computer Networks. Prentice Hall PTR, Upper Saddle River, New Jersey, 4th edition.
Triantaphyllou, E. (2000). Multi-Criteria Decision Making Methodologies: A Comparative Study, volume 44 of Applied Optimization. Springer, Dordrecht.
Chiu, D. and Agrawal, G. (2010). Evaluating caching and storage options on the Amazon Web Services cloud. In Grid Computing (GRID), 2010 11th IEEE/ACM Int. Conf. on, pages 17–24. IEEE.
Comanescu, M. (2012). Implementation of time-varying observers used in direct eld orientation of motor drives by trapezoidal integration. In Power Electronics, Machines and Drives (PEMD 2012), 6th IET Int. Conf. on, pages 1–6. IET. Copil, G., Moldovan, D., Truong, H.-L., and Dustdar, S. (2013). Sybl: An extensible language for controlling elasticity in cloud applications. In Cluster, Cloud and Grid Computing (CCGrid), 2013 13th IEEE/ACM Int. Symposium on, pages 112–119. IEEE.
Dustdar, S., Gambi, A., Krenn, W., and Nickovic, D. (2015). A pattern-based formalization of cloud-based elastic systems. In Proceedings of the Seventh Int. Workshop on Principles of Engineering Service-Oriented and Cloud Systems, PESOS '15, pages 31–37, Piscataway, NJ, USA. IEEE Press.
Farokhi, S., Jamshidi, P., Brandic, I., and Elmroth, E. (2015). Self-adaptation challenges for cloud-based applications : A control theoretic perspective. In 10th Int. Workshop on Feedback Computing (Feedback Computing 2015). ACM.
Herbst, N. R., Kounev, S., Weber, A., and Groenda, H. (2015). Bungee: An elasticity benchmark for self-adaptive IaaS cloud environments. In Proceedings of the 10th Int. Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS '15, pages 46–56, Piscataway, NJ, USA. IEEE Press.
Imai, S., Chestna, T., and Varela, C. A. (2012). Elastic scalable cloud computing using application-level migration. In Proceedings of the 2012 IEEE/ACM Fifth Int. Conf. on Utility and Cloud Computing, UCC '12, pages 91–98, Washington, DC, USA. IEEE Computer Society.
Jackson, K. R., Ramakrishnan, L., Muriki, K., Canon, S., Cholia, S., Shalf, J., Wasserman, H. J., and Wright, N. J. (2010). Performance analysis of high performance computing applications on the Amazon Web Services cloud. In Proceedings of the 2010 IEEE Second Int. Conf. on Cloud Computing Technology and Science, CLOUDCOM '10, pages 159–168, Washington, DC, USA. IEEE Computer Society.
Lorido-Botran, T., Miguel-Alonso, J., and Lozano, J. (2014). A review of autoscaling techniques for elastic applications in cloud environments. Journal of Grid Computing, 12(4):559–592.
Mariani, S., Truong, H.-L., Copil, G., Omicini, A., and Dustdar, S. (2014). Coordination-aware elasticity. In 7th IEEE/ACM Int. Conf. on Utility and Cloud Computing (UCC 2014), pages 56–63, London, UK. IEEE Computer Society. Netto, M. A. S., Cardonha, C., Cunha, R. L. F., and Assuncao, M. D. (2014). Evaluating auto-scaling strategies for cloud computing environments. In IEEE 22nd Int. Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems, MASCOTS 2014, Paris, France, September 9-11, 2014, pages 187–196. IEEE.
Nikravesh, A. Y., Ajila, S. A., and Lung, C.-H. (2015). Towards an autonomic autoscaling prediction system for cloud resource provisioning. In Proceedings of the 10th Int. Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS '15, pages 35–45, Piscataway, NJ, USA. IEEE Press.
Rajan, D., Canino, A., Izaguirre, J. A., and Thain, D. (2011). Converting a high performance application to an elastic cloud application. In Proceedings of the 2011 IEEE Third Int. Conf. on Cloud Computing Technology and Science, CLOUDCOM '11, pages 383–390, Washington, DC, USA. IEEE Computer Society.
Raveendran, A., Bicer, T., and Agrawal, G. (2011). A framework for elastic execution of existing MPI programs. In Proceedings of the 2011 IEEE Int. Symposium on Parallel and Distributed Processing Workshops and PhD Forum, IPDPSW '11, pages 940–947, Washington, DC, USA. IEEE Computer Society.
Righi, R. d. R., Rodrigues, V. F., Costa, C. A. d., Galante, G., Bona, L. C. E. d., and Ferreto, T. (2016). Autoelastic: Automatic resource elasticity for high performance applications in the cloud. IEEE Transactions on Cloud Computing, 4(1):6–19.
Rolo, E., Birck, F., Diener, M., Carissimi, A., and Navaux, P. (2012). EvaluIn Cloud ating high performance computing on the Windows Azure platform. Computing (CLOUD), 2012 IEEE 5th Int. Conf. on, pages 803 –810. IEEE. Spinner, S., Kounev, S., Zhu, X., Lu, L., Uysal, M., Holler, A., and Grith, R. (2014). Runtime vertical scaling of virtualized applications via online model estimation. In Proceedings of the 2014 IEEE 8th Int. Conf. on Self-Adaptive and Self-Organizing Systems (SASO). IEEE.
Tanenbaum, A. (2003). Computer Networks. Prentice Hall PTR, Upper Saddle River, New Jersey, 4th edition.
Triantaphyllou, E. (2000). Multi-Criteria Decision Making Methodologies: A Comparative Study, volume 44 of Applied Optimization. Springer, Dordrecht.
Published
2016-10-05
How to Cite
RODRIGUES, Vinicius; ROSTIROLLA, Gustavo; RIGHT, Rodrigo; COSTA, Cristiano.
SelfElastic: Combinando Elasticidade Reativa e Proativa para Aplicações de Alto Desempenho. In: BRAZILIAN SYMPOSIUM ON HIGH PERFORMANCE COMPUTING SYSTEMS (SSCAD), 17. , 2016, Aracajú.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2016
.
p. 25-36.
DOI: https://doi.org/10.5753/wscad.2016.14245.
