Container-Based Cloud Virtual Machine Benchmarking
Abstract
With the availability of a wide range of cloud Virtual Machines (VMs) it is difficult to determine which VMs can maximise the performance of an application. Benchmarking is commonly used to this end for capturing the performance of VMs. Most cloud benchmarking techniques are typically heavyweight-time consuming processes which have to benchmark the entire VM in order to obtain accurate benchmark data. Such benchmarks cannot be used in real-time on the cloud and incur extra costs even before an application is deployed. In this paper, we present lightweight cloud benchmarking techniques that execute quickly and can be used in near real-time on the cloud. The exploration of lightweight benchmarking techniques are facilitated by the development of DocLite-Docker Container-based Lightweight Benchmarking. DocLite is built on the Docker container technology which allows a user-defined portion (such as memory size and the number of CPU cores) of the VM to be benchmarked. DocLite operates in two modes, in the first mode, containers are used to benchmark a small portion of the VM to generate performance ranks. In the second mode, historic benchmark data is used along with the first mode as a hybrid to generate VM ranks. The generated ranks are evaluated against three scientific high-performance computing applications. The proposed techniques are up to 91 times faster than a heavyweight technique which benchmarks the entire VM. It is observed that the first mode can generate ranks with over 90% and 86% accuracy for sequential and parallel execution of an application. The hybrid mode improves the correlation slightly but the first mode is sufficient for benchmarking cloud VMs.
References (32)
- A. Iosup, S. Ostermann, N. Yigitbasi, R. Prodan, T. Fahringer and D. Epema, "Performance Analysis of Cloud Computing Services for Many-Tasks Scientific Computing," IEEE Transactions on Parallel and Distributed Systems, Vol. 22, Issue 6, 2011, pp. 931-945.
- B. F. Cooper, A. Silberstein, E. Tam, R. Ramakrishnan and R. Sears, "Benchmarking Cloud Serving Systems with YCSB," Proceedings of the 1st ACM Symposium on Cloud Computing, 2010, pp. 143-154.
- B. Varghese, O. Akgun, I. Miguel, L. Thai and A. Barker, "Cloud Bench- marking for Performance," Proceedings of the 6th IEEE International Conference on Cloud Computing Technology and Science, 2014, pp. 535-540.
- E. Folkerts, A. Alexandrov, K. Sachs, A. Iosup, V. Markl and C. Tosun, "Benchmarking in the Cloud: What it Should, Can, and Cannot Be," Selected Topics in Performance Evaluation and Benchmarking (Editors: R. Nambiar and M. Poess), Lecture Notes in Computer Science, 2013, pp. 173-188.
- C. Anderson, "Docker," IEEE Software, 2015, pp. 102-105.
- J. Bottomley and P. Emelyanov, "Containers," USENIX ;login:, Vol. 39, No. 5, 2014, pp. 6-10.
- W. Felter, A. Ferreira, R. Rajamony and J. Rubio, "An Updated Per- formance Comparison of Virtual Machines and Linux Containers," IBM Research Report, RC25482 (AUS1407-001), 2014.
- D. Bernstein, "Containers and Cloud: From LXC to Docker to Kuber- netes," IEEE Cloud Computing, Vol. 1, Issue 3, 2014, pp. 81-84.
- D. Kaeli and K. Sachs, "Computer Performance Evaluation and Bench- marking," Lecture Notes on Computer Science 5419, Springer, 2009.
- K. Huppler, "The Art of Building a Good Benchmark," Performance Evaluation and Benchmarking (Editors: R. Nambiar and M. Poess), Lecture Notes in Computer Science, 2009, pp. 18-30.
- J. J. Dongarra, P. Luszczek and A. Petitet, "The LINPACK Benchmark: Past, Present and Future," Concurrency and Computation: Practice and Experience, Vol. 15, 2013, pp. 803-820.
- E. Folkerts, A. Alexandrov, K. Sachs, A. Iosup, V. Markl and C. Tosun, "Benchmarking in the Cloud: What it Should, Can, and Cannot Be," Selected Topics in Performance Evaluation and Benchmarking (Editors: R. Nambiar and M. Poess), Lecture Notes in Computer Science, 2013, pp. 173-188.
- L. Gillam, B. Li, J. O'Loughlin and A. P. S. Tomar, "Fair Benchmarking for Cloud Computing systems," Journal of Cloud Computing: Advances, Systems and Applications, Vol. 2, Issue 6, 2013.
- Z. Li, L. O'Brien, H. Zhang and R. Cai, "On a Catalogue of Metrics for Evaluating Commercial Cloud Services," Proceedings of the 13th International Conference on Grid Computing, 2012, pp.164-173.
- M. Ferdman, A. Adileh, O. Kocberber, S. Volos, M. Alisafaee, D. Jevdjic, C. Kaynak, A. D. Popescu, A. Ailamaki, and B. Falsa, "Clearing the Clouds: A Study of Emerging Scale-out Workloads on Modern Hard- ware" Proceedings of the 17th International Conference on Architectural Support for Programming Languages and Operating Systems, 2012.
- A. Lenk, M. Menzel, J. Lipsky, S. Tai and P. Offermann, "What are you paying for? Performance Benchmarking for Infrastructure-as-a-Service Offerings," Proceedings of the 4th International Conference on Cloud Computing, 2011, pp. 484-491.
- J. Schad, J. Dittrich, J. -A. Quiane-Ruiz, "Runtime Measurements in the Cloud: Observing, Analyzing, and Reducing Variance," Proceedings of the VLDB Endowment, Vol. 3, Issue 1-2, 2010, pp. 460-471.
- A. Li, X. Zong, S. Kandula, X. Yang and M. Zhang, "CloudProphet: Towards Application Performance Prediction in Cloud," Proceedings of the ACM SIGCOMM 2011 conference, 2011, pp. 426-427.
- W. Sobel, S. Subramanyam, A. Sucharitakul, J. Nguyen, H. Wong, A. Klepchukov, S. Patil, A. Fox and D. Patterson "Cloudstone: Multi- Platform Multi-Language Benchmark and Measurement Tools for Web 2.0," Proceedings of Cloud Computing and its Applications, 2008.
- S. Soltesz, H. Potzl, M. E. Fiuczynski, A. Bavier and L. Peterson, "Container-based Operating system Virtualization: A Scalable, High- performance Alternative to Hypervisors ," Proceedings of the 2nd ACM SIGOPS/EuroSys European Conference on Computer Systems, 2007, pp. 275-287.
- M. G. Xavier, M. V. Neves, F. D. Rossi, T. C. Ferreto, T. Lange, C. A. F. De Rose, "Performance Evaluation of Container-Based Virtualization for High Performance Computing Environments," Proceedings of the 21st Euromicro International Conference on Parallel, Distributed and Network-Based Processing, 2013, pp. 233-240.
- W. Li, A. Kanso and A. Gherbi, "Leveraging Linux Containers to Achieve High Availability for Cloud Services," Proceedings of the IEEE International Conference on Cloud Engineering, 2015, pp. 76-83.
- H. Yoon, M. Ravichandran and K. Schwan, "Distributed Cloud Storage Services with FleCS Containers," Open Cirrus Summit, 2011.
- C. Boettiger, "An Introduction to Docker for Reproducible Research," ACM SIGOPS Operating Systems Review -Special Issue on Repeata- bility and Sharing of Experimental Artifacts, Vol. 49, Issue 1, 2015, pp. 71-79.
- T. Bui, "Analysis of Docker Security," arXiv:1501.02967 [cs.CR], 2015.
- C. Staelin, "lmbench -An Extensible Micro-benchmark Suite," Software -Practice and Experience, 2004.
- S. Ostermann, A. Iosup, R. Prodan, T. Fahringer and D. Epema, "A Performance Analysis of EC2 Cloud Computing Services for Scientific Computing," Lecture Notes of the Institute for Computer Sciences, Social-Informatics and Telecommunications Engineering, Vol. 34, 2010, pp 115-131.
- K. J. Bowers, E. Chow, H. Xu, R. O. Dror, M. P. Eastwood, B. A. Gregersen, J. L. Klepeis, I. Kolossvary, M. A. Moraes, F. D. Sacerdoti, J. K. Salmon, Y. Shan and D. E. Shaw, "Scalable Algorithms for Molecular Dynamics Simulations on Commodity Clusters," Proceedings of the ACM/IEEE Conference on Supercomputing, Article No. 84, 2006.
- A. K. Bahl, O. Baltzer, A. Rau-Chaplin, and B. Varghese, "Parallel Simulations for Analysing Portfolios of Catastrophic Event Risk," Work- shop Proceedings of the International Conference of High Performance Computing, Networking, Storage and Analysis, 2012.
- D. H. Bailey, E. Barszcz, J. T. Barton, D. S. Browning, R. L. Carter, L. Dagum, R. A. Fatoohi, P. O. Frederickson, T. A. Lasinski, R. S. Schreiber, H. D. Simon, V. Venkatakrishnan, S. K. Weeratunga, "The NAS Parallel Benchmarks -Summary and Preliminary Results," Proceedings of the ACM/IEEE Conference on Supercomputing, 1991, pp. 158-165.
- M. Luckeneder and A. Barker," Location, Location, Location: Data- Intensive Distributed Computing in the Cloud," Proceedings of the 5th IEEE International Conference on Cloud Computing Technology and Science, 2013, pp. 647-654.
- L. Thai, A. Barker, B. Varghese, O. Akgun and I. Miguel, "Optimal Deployment of Geographically Distributed Workflow Engines on the Cloud," Proceedings of the 6th IEEE International Conference on Cloud Computing Technology and Science, 2014, pp. 811-816.