Design Space Exploration of Heterogeneous Systems Applied to the Cloud Resource Allocation Problem
Cloud computing services providers offer on-demand computing resources to applications. Finding the best cloud resource allocation that fits the users’ budget, meets application performance and constraints are still a research challenge. The cloud resource allocation problem is quite akin to the Design Space Exploration (DSE) problem once they both have to find suitable hardware configurations in an ample design space, having incompatible objectives subject to several constraints. This work presents a solution to the cloud resource allocation problem by applying a design space exploration technique. We have designed and developed a software extension, MultiExplorer-VM, from a DSE tool, MultiExplorer, that has a workflow to provide virtual machine configurations according to the users’ requirements and application constraints. A comprehensive set of experiments has been performed to evaluate and validate the proposed tool. We have also compared solutions from our proposal to other existing research work focused on the cloud resource allocation problem based on the Paramount Interaction (PI) technique. The results show that the MultiExplorer-VM achieves significant (better) results than the PI technique. The cost results brought by the MultiExplorer-VM were up to 8.8 times lower compared to the PI technique. The experiments also reveal that for most of the applications, MultiExplorer-VM achieved the optimal cloud configuration.
Amazon (2020). Amazon Web Services. https://aws.amazon.com/. [Online; accessed: 08-February-2020].
Bailey, D., Harris, T., Saphir, W., Van Der Wijngaart, R., Woo, A., and Yarrow, M. (1995). The NAS parallel benchmarks 2.0. Technical report, Technical Report NAS-95-020, NASA Ames Research Center.
Buyya, R., Ranjan, R., and Calheiros, R. N. (2009). Modeling and simulation of scalable cloud computing environments and the cloudsim toolkit: Challenges and opportunities. In 2009 International Conference on High Performance Computing & Simulation, pages 1-11. IEEE.
Calheiros, R. N., Ranjan, R., Beloglazov, A., De Rose, C. A., and Buyya, R. (2011). Cloudsim: a toolkit for modeling and simulation of cloud computing environments and evaluation of resource provisioning algorithms. Software: Practice and experience, 41(1):23-50.
Goyal, T., Singh, A., and Agrawal, A. (2012). Cloudsim: simulator for cloud computing infrastructure and modeling. Procedia Engineering, 38:3566-3572.
Hsu, C.-J., Nair, V., Freeh, V. W., and Menzies, T. (2018). Arrow: Low-level augmented bayesian optimization for finding the best cloud vm. In 2018 IEEE 38th International Conference on Distributed Computing Systems, pages 660-670. IEEE.
Lee, G. and Katz, R. H. (2011). Heterogeneity-aware resource allocation and scheduling in the cloud. HotCloud, 11:4-8.
Luk, C.-K., Cohn, R., Muth, R., Patil, H., Klauser, A., Lowney, G., Wallace, S., Reddi, V. J., and Hazelwood, K. (2005). Pin: building customized program analysis tools with dynamic instrumentation. ACM sigplan notices, 40(6):190-200.
Rosario, V. M., Silva Camacho, T. A., Napoli, O. O., and Borin, E. (2020). Fast and low-cost search for efficient cloud configurations for HPC workloads. arXiv e-prints.
Smith, J. and Nair, R. (2005). Virtual machines: versatile platforms for systems and processes. Elsevier.
Venkataraman, S., Yang, Z., Franklin, M., Recht, B., and Stoica, I. (2016). Ernest: Efficient performance prediction for large-scale advanced analytics. In 13th Symposium on Networked Systems Design and Implementation, pages 363-378.
Yadwadkar, N. J., Hariharan, B., Gonzalez, J. E., Smith, B., and Katz, R. H. (2017). Selecting the best vm across multiple public clouds: A data-driven performance modeling approach. In Proceedings of the 2017 Symposium on Cloud Computing, pages 452-465.