Publication:
MT-EA4Cloud: A Methodology For testing and optimising energy-aware cloud systems

Loading...
Thumbnail Image
Full text at PDC
Publication Date
2020-05
Advisors (or tutors)
Editors
Journal Title
Journal ISSN
Volume Title
Publisher
Elsevier
Citations
Google Scholar
Research Projects
Organizational Units
Journal Issue
Abstract
Currently, using conventional techniques for checking and optimising the energy consumption in cloud systems is unpractical, due to the massive computational resources required. An appropriate test suite focusing on the parts of the cloud to be tested must be efficiently synthesised and executed, while the correctness of the test results must be checked. Additionally, alternative cloud configurations that optimise the energetic consumption of the cloud must be generated and analysed accordingly, which is challenging. To solve these issues we present MT-EA4Cloud, a formal approach to check the correctness – from an energy-aware point of view – of cloud systems and optimise their energy consumption. To make the checking of energy consumption practical, MT-EA4Cloud combines metamorphic testing, evolutionary algorithms and simulation. Metamorphic testing allows to formally model the underlying cloud infrastructure in the form of metamorphic relations. We use metamorphic testing to alleviate both the reliable test set problem, generating appropriate test suites focused on the features reflected in the metamorphic relations, and the oracle problem, using the metamorphic relations to check the generated results automatically. MT-EA4Cloud uses evolutionary algorithms to efficiently guide the search for optimising the energetic consumption of cloud systems, which can be calculated using different cloud simulators.
Description
Keywords
Citation
[1] I. Flouris, N. Giatrakos, A. Deligiannakis, M. Garofalakis, M. Kamp, M. Mock, Issues in complex event processing: Status and prospects in the Big Data era, Journal of Systems and Software 127 (2017) 217 – 236. [2] C.-F. Tsai, W.-C. Lin, S.-W. Ke, Big data mining with parallel computing: A comparison of distributed and MapReduce methodologies, Journal of Systems and Software 122 (2016) 83 – 92. [3] K. Le, R. Bianchini, J. Zhang, Y. Jaluria, J. Meng, T. D. Nguyen, Reducing Electricity Cost Through Virtual Machine Placement in High Performance Computing Clouds, in: 24th Int. Conf. for High Performance Computing, Networking, Storage and Analysis, SC’11, ACM Press, 2011, pp. 22:1–22:12. [4] Top500 Supercomputer sites, http://www.top500.org (April 2018) (2018). [5] D.-M. Bui, Y. Yoon, E.-N. Huh, S. Jun, S. Lee, Energy efficiency for cloud computing system based on predictive optimization, Journal of Parallel and Distributed Computing 102 (2017) 103–114. [6] Y. Sharma, B. Javadi, W. Si, D. Sun, Reliability and energy efficiency in cloud computing systems: Survey and taxonomy, Journal of Network and Computer Applications 74 (2016) 66–85. [7] T. Chen, F. Kuo, H. Liu, P. Poon, D. Towey, T. Tse, Z. Zhou, Metamorphic testing: A review of challenges and opportunities, ACM Computing Surveys 51 (1) (2018) 4. [8] S. Segura, G. Fraser, A. B. Sánchez, A. Ruiz-Cortés, A survey on metamorphic testing, IEEE Transactions on Software Engineering (in-press) PP (99) (2016) 1–1. [9] K. A. D. Jong, Evolutionary Computation: A Unified Approach, march 25, 2016 Edition, A Bradford Book, 2016. [10] M. Harman, Y. Jia, Y. Zhang, Achievements, open problems and challenges for search based software testing, in: IEEE 8th International Conference on Software Testing, Verification and Validation (ICST’15), 2015, pp. 1–12. [11] R. N. Calheiros, R. Ranjan, A. Beloglazov, C. A. F. D. Rose, R. Buyya, Cloudsim: A toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms, Software - Practice and Experience 41 (1) (2011) 23–50. [12] G. Castañé, A. Núñez, P. Llopis, J. Carretero, E-mc ˜2 : A formal framework for energy modelling in cloud computing, Simulation Modelling Practice and Theory 39 (2013) 56–75. [13] H. Casanova, A. Legrand, M. Quinson, SimGrid: A generic framework for large-scale distributed experiments, in: 10th Int. Conf. on Computer Modeling and Simulation, UKSIM’ 08, 2008, pp. 126–131. [14] E. J. Weyuker, On testing non-testable programs, The Computer Journal 25 (4) (1982) 465–470. [15] E. Gelenbe, Y. Caseau, The impact of information technology on energy consumption and carbon emissions, Ubiquity 2015 (June) (2015) 1:1–1:15. [16] G. Pinto, F. Castor, Energy efficiency: a new concern for application software developers, Communications of the ACM 60 (12) (2017) 68–75. [17] I. Manotas, C. Bird, R. Zhang, D. Shepherd, C. Jaspan, C. Sadowski, L. Pollock, J. Clause, An empirical study of practitioners’ perspectives on green software engineering, in: 38th International Conference on Software Engineering (ICSE’16), ACM, 2016, pp. 237–248. [18] G. S. Akula, A. Potluri, Heuristics for migration with consolidation of ensembles of virtual machines, in: Sixth International Conference on Communication Systems and Networks (COMSNETS’14), 2014, pp. 1–4. [19] S. F. Smith, Is scheduling a solved problem?, in: Multidisciplinary Scheduling: Theory and Applications (MISTA’03), 2005, pp. 3–17. [20] S. Dillon, A. Quentin, M. Ivkovic, R. Furbank, E. Pinkard, Photosynthetic variation and responsiveness to co2 in a widespread riparian tree, PloS one 13 (1) (2018) e0189635. [21] A. Khosravi, R. Buyya, Energy and carbon footprint-aware management of geo-distributed cloud data centers, Advancing cloud database systems and capacity planning with dynamic applications (2017) 27. [22] A. L. García, E. F. del Castillo, P. O. Fernandez, I. C. Plasencia, J. Marco de Lucas, Resource provisioning in Science Clouds: Requirements and challenges, Software: Practice and Experience 48 (3) (2018) 486–498. [23] J. Wang, K. Rao, H. Ye, Application-Specific, Performance-Aware Energy OptimizationUS Patent App. 15/224,834. [24] P. Kurp, Green computing, Commun. ACM 51 (10) (2008) 11–13. [25] The Green Grid, http://www.thegreengrid.org/ (April 2018) (2018). [26] The Green 500 List, http://www.green500.org (2018). [27] T. Y. Chen, S. C. Cheung, S. M. Yiu, Metamorphic testing: a new approach for generating next test cases, Tech. Rep. HKUST-CS98-01, Department of Computer Science, Hong Kong University of Science and Technology (1998). [28] J. Ding, D. Zhang, X. Hu, An application of metamorphic testing for testing scientific software, in: 1st International Workshop on Metamorphic Testing, ACM, 2016, pp. 37–43. [29] H. Liu, F.-C. Kuo, D. Towey, T. Y. Chen, How effectively does metamorphic testing alleviate the oracle problem?, IEEE Transactions on Software Engineering 40 (1) (2014) 4–22. [30] A. Beloglazov, J. Abawajy, R. Buyya, Energy-aware resource allocation heuristics for efficient management of data centers for cloud computing, Future generation computer systems 28 (5) (2012) 755–768. [31] I. Raïs, A. Orgerie, M. Quinson, L. Lefevre, Quantifying the impact of shutdown techniques for energy-efficient data centers, Concurrency and Computation: Practice and Experience 30 (17). [32] H. R. Faragardi, S. Dehnavi, T. Nolte, M. Kargahi, T. Fahringer, An energy-aware resource provisioning scheme for real-time applications in a cloud data center, Software: Practice and Experience 48 (10) (2018) 1734–1757. [33] M. Sayadnavard, A. Haghighat, A. Rahmani, A reliable energy-aware approach for dynamic virtual machine consolidation in cloud data centers, The Journal of Supercomputing 75 (4) (2019) 2126–2147. [34] M. Mohammadhosseini, A. Haghighat, E. Mahdipour, An efficient energy-aware method for virtual machine placement in cloud data centers using the cultural algorithm, The Journal of Supercomputing (2019) 1–30. [35] M. Haghighi, M. Maeen, M. Haghparast, An Energy-Efficient Dynamic Resource Management Approach Based on Clustering and Meta-Heuristic Algorithms in Cloud Computing IaaS Platforms, Wireless Personal Communications 104 (4) (2019) 1367–1391. [36] A. Merlo, M. Migliardi, L. Caviglione, A survey on energy-aware security mechanisms, Pervasive and Mobile Computing 24 (2015) 77–90. [37] K. Sammy, R. Shengbing, C. Wilson, Energy efficient security preserving vm live migration in data centers for cloud computing, IJCSI International Journal of Computer Science Issues 9 (2) (2012) 1694–0814. [38] V. Kharchenko, Y. Ponochovnyi, A. Boyarchuk, A. Gorbenko, Secure hybrid clouds: Analysis of configurations energy efficiency, in: International Conference on Dependability and Complex Systems, Springer, 2015, pp. 195–209. [39] S. Segura, J. Parejo, J. Troya, A. Ruiz-Corts, Metamorphic Testing of RESTful Web APIs, IEEE Transactions on Software Engineering. [40] M. Jiang, T. Y. Chen, F. Kuo, Z. Ding, Testing central processing unit scheduling algorithms using metamorphic testing, in: 4th IEEE International Conference on Software Engineering and Service Science, ICSESS’13, 2013, pp. 530–536. [41] P. Rao, Z. Zheng, T. Y. Chen, N. Wang, K. Cai, Impacts of test suite’s class imbalance on spectrum-based fault localization techniques, in: 13th International Conference on Quality Software (QSIC’13), 2013, pp. 260–267. [42] X. Xie, W. E. Wong, T. Y. Chen, B. Xu, Metamorphic slice: An application in spectrum-based fault localization, Information and Software Technology 55 (5) (2013) 866–879. [43] M. Hutchins, H. Foster, T. Goradia, T. Ostrand, Experiments of the Effectiveness of Dataflow- and Controlflowbased Test Adequacy Criteria, in: 16th International Conference on Software Engineering (ICSE’94), 1994, pp. 191–200. [44] V. Le, M. Afshari, Z. Su, Compiler validation via equivalence modulo inputs, in: 35th ACM SIGPLAN Conference on Programming Language Design and Implementation, PLDI’14, ACM, 2014, pp. 216–226. [45] W. K. Chan, T. Y. Chen, S. C. Cheung, T. H. Tse, Z. Zhang, Towards the testing of power-aware software applications for wireless sensor networks, in: Reliable Software Technologies – Ada Europe 2007, 2007, pp. 84–99. [46] A. Núñez, R. M. Hierons, A methodology for validating cloud models using metamorphic testing, Annales of Telecommunications 70 (3-4) (2015) 127–135. [47] C. Murphy, M. S. Raunak, A. King, S. Chen, C. Imbriano, G. Kaiser, I. Lee, O. Sokolsky, L. Clarke, L. Osterweil, On effective testing of health care simulation software, in: 3rd Workshop on Software Engineering in Health Care, SEHC ’11, 2011, pp. 40–47. [48] J. Ding, T. Wu, D. Wu, J. Q. Lu, X. Hu, Metamorphic testing of a monte carlo modeling program, in: 6th International Workshop on Automation of Software Test, AST ’11, 2011, pp. 1–7. [49] T. Y. Chen, F. Kuo, H. Liu, S. Wang, Conformance testing of network simulators based on metamorphic testing technique, in: 11th IFIP WG 6.1 International Conference FMOODS ’09, 2009, pp. 243–248. [50] T. Chen, F. C. Kuo, R. Merkel, W. K. Tam, Testing an open source suite for open queuing network modelling using metamorphic testing technique, in: 14th IEEE International Conference on Engineering of Complex Computer Systems, 2009, pp. 23–29. [51] I. Zelinka, A survey on evolutionary algorithms dynamics and its complexity mutual relations, past, present and future, Swarm and Evolutionary Computation 25 (2015) 2 – 14. [52] K. Maryam, M. Sardaraz, M. Tahir, Evolutionary algorithms in cloud computing from the perspective of energy consumption: A review, in: 14th International Conference on Emerging Technologies, ICET’18, IEEE, 2018, pp. 1–6. [53] B. Keshanchi, A. Souri, N. J. Navimipour, An improved genetic algorithm for task scheduling in the cloud environments using the priority queues: formal verification, simulation, and statistical testing, Journal of Systems and Software 124 (2017) 1–21. [54] M. Vasudevan, Y.-C. Tian, M. Tang, E. Kozan, X. Zhang, Energy-efficient application assignment in profile-based data center management through a repairing genetic algorithm, Applied Soft Computing 67 (2018) 399–408. [55] Z. Xiao, J. Jiang, Y. Zhu, Z. Ming, S. Zhong, S. Cai, A solution of dynamic vms placement problem for energy consumption optimization based on evolutionary game theory, Journal of Systems and Software 101 (C) (2015) 260–272. [56] H. Ibrahim, R. Aburukba, K. El-Fakih, An integer linear programming model and adaptive genetic algorithm approach to minimize energy consumption of cloud computing data centers, Computers & Electrical Engineering 67 (2018) 551–565. [57] E. Gabaldon, J. Lerida, F. Guirado, J. Planes, Blacklist muti-objective genetic algorithm for energy saving in heterogeneous environments, The Journal of Supercomputing 73 (1) (2017) 354–369. [58] L. Zhang, Y. Wang, L. Zhu, W. Ji, Towards energy efficient cloud: An optimized ant colony model for virtual machine placement, Journal of Communications and Information Networks 1 (4) (2016) 116–132. [59] M. Usman, A. Samad, H. Chizari, A. Aliyu, et al., Energy-Efficient virtual machine allocation technique using interior search algorithm for cloud datacenter, in: 6th ICT International Student Project Conference (ICT-ISPC), IEEE, 2017, pp. 1–4. [60] F. Abdessamia, Y. Tai, W. Zhang, M. Shafiq, An improved particle swarm optimization for energy-efficiency virtual machine placement, in: International Conference on Cloud Computing Research and Innovation, ICCCRI’17, IEEE, 2017, pp. 7–13. [61] M. Soltanshahi, R. Asemi, N. Shafiei, Energy-aware virtual machines allocation by krill herd algorithm in cloud data centers, Heliyon 5 (7) (2019) e02066. [62] S. Segura, J. Troya, A. Duran, A. Ruiz-Cortés, Performance metamorphic testing: A proof of concept, Information and Software Technology 98 (2018) 1–4. [63] J. Rounds, U. Kanewala, Systematic testing of genetic algorithms: A metamorphic testing based approach, arXiv preprint arXiv:1808.01033. [64] D. Arora, V. G. Bassi, Generating test cases using metamorphic testing and genetic algorithm for integer bugs detection, Ph.D. thesis (2015). [65] E. Elbeltagi, T. Hegazy, D. Grierson, Comparison among five evolutionary-based optimization algorithms, Advanced engineering informatics 19 (1) (2005) 43–53. [66] V. Kachitvichyanukul, Comparison of three evolutionary algorithms: GA, PSO, and DE, Industrial Engineering and Management Systems 11 (3) (2012) 215–223. [67] J. Wegener, K. Grimm, M. Grochtmann, H. Sthamer, B. Jones, Systematic testing of real-time systems, in: 4th International Conference on Software Testing Analysis and Review (EuroSTAR 96), 1996. [68] K. Wloch, P. Bentley, Optimising the performance of a formula one car using a genetic algorithm, in: International Conference on Parallel Problem Solving from Nature, Springer, 2004, pp. 702–711. [69] J. Byrne, S. Svorobej, K. Giannoutakis, D. Tzovaras, P. Byrne, P. Ostberg, A. Gourinovitch, T. Lynn, A review of cloud computing simulation platforms and related environments, in: 7th International Conference on Cloud Computing and Services Science, 2017, pp. 679–691. [70] M. Tighe, G. Keller, M. Bauer, H. Lutfiyya, DCSim: A data centre simulation tool for evaluating dynamic virtualized resource management, in: 8th International conference on network and service management, 2012, pp. 385–392. [71] S. U. K. Dzmitry Kliazovich, Pascal Bouvry, GreenCloud: A packet-level simulator of energy-aware cloud computing data centers, The Journal of Supercomputing 62 (3) (2012) 1263–1283. [72] A. Núñez, J. L. Vázquez-Poletti, A. C. Caminero, G. G. Castañé, J. Carretero, I. M. Llorente, iCanCloud: A flexible and scalable cloud infrastructure simulator, Journal of Grid Computing 10 (1) (2012) 185–209. [73] G. Kecskemeti, DISSECT-CF: A simulator to foster energy-aware scheduling in infrastructure clouds, Simulation Modelling Practice and Theory 58 (2015) 188–218, special issue on Cloud Simulation. [74] H. Ouarnoughi, J. Boukhobza, F. Singhoff, S. Rubini, Integrating i/os in cloudsim for performance and energy estimation, ACM SIGOPS Operating Systems Review 50 (1) (2017) 27–36. [75] P. Cristian, P. Eugen, A. Marcel, C. Pop, T. Cioara, I. Anghel, I. Salomie, Coolcloudsim: Integrating cooling system models in cloudsim, in: IEEE 14th International Conference on Intelligent Computer Communication and Processing (ICCP’18), 2018, pp. 387–394. [76] A. S. M. Rizvi, T. R. Toha, M. M. R. Lunar, M. A. Adnan, A. B. M. A. A. Islam, Cooling energy integration in simgrid, in: 2017 International Conference on Networking, Systems and Security (NSysS), 2017, pp. 132–137. [77] N. Hassan, M. Khan, M. Rasul, Temperature monitoring and cfd analysis of data centre, Procedia Engineering 56 (2013) 551 – 559, 5th BSME International Conference on Thermal Engineering. [78] K. Kurowski and A. Oleksiak and W. Piatek and T. Piontek and A. Przybyszewski and J. Weglarz, Dcworms - a tool for simulation of energy efficiency in distributed computing infrastructures, Simulation Modelling Practice and Theory 39 (2013) 135–151. [79] D. Ortiz-Boyer, C. Hervas-Martínez, N. García-Pedrajas, Cixl2: a crossover operator for evolutionary algorithms based on population features, Journal of Artificial Intelligence Research 24 (2005) 1–48. [80] A. Globus, S. Atsatt, J. Lawton, T. Wipke, Javagenes: Evolving graphs with crossover, Tech. Rep. NAS-00-006, NASA Advanced Supercomputing Division (2000). [81] K. Park, V. S. Pai, CoMon: a mostly-scalable monitoring system for PlanetLab, ACM SIGOPS Operating Systems Review 40 (1) (2006) 65–74. [82] W. Kolberg, P. B. Marcos, J. C. Anjos, A. Miyazaki, C. Geyer, L. Arantes, Mrsg–a mapreduce simulator over simGrid, Parallel Computing 39 (4-5) (2013) 233–244. [83] H. R. Faragardi, M. Vahabi, H. Fotouhi, T. Nolte, T. Fahringer, An efficient placement of sinks and sdn controller nodes for optimizing the design cost of industrial iot systems, Software: Practice and Experience 48 (10) (2018) 1893–1919.
Collections