The Optimal Resource Allocation Among Virtual Machines in Cloud Computing

Virtualization is a key technology for multi-tenant cloud computing enabling isolation of tenants in one or more instances of virtual machines and sharing the hardware resources. In reality, modern multi-core multiprocessors also share the last level cache among all cores on one chip. Our goal will be to enable an optimal resource allocation by avoiding cache misses as much as possible, since this will lead to per- formance increase. In this paper, we analyze the performance of single and multi-tenant environments in cloud environment installed on a single chip multi core multiprocessor with different resource allocation to the tenants. We realize a series of experiments with matrix multiplication as compute intensive and memory demanding algorithm by varying the matrix size to analyze performance behavior upon different workload and variable cache requirements. Each experiment uses the same resources but it is orchestrated differently. Although one might think that virtualization and clouds include software overhead, the results show how and when cloud computing can achieve even better performance than traditional environment, both in a single-tenant and multi-tenant resource allocation for certain workload. The conclusions show that there are regions where the best performance in the cloud environment is achieved for cache intensive algorithms allocating the resources among many concurrent instances of virtual machines rather than in traditional multiprocessors using OpenMP.

[1]  M. Gusev,et al.  Achieving maximum performance for matrix multiplication using set associative cache , 2012, 2012 8th International Conference on Computing Technology and Information Management (NCM and ICNIT).

[2]  Angela C. Sodan,et al.  Predicting cache needs and cache sensitivity for applications in cloud computing on CMP servers with configurable caches , 2009, 2009 IEEE International Symposium on Parallel & Distributed Processing.

[3]  Bai Xiaoyong High Performance Computing for Finite Element in Cloud , 2011, 2011 International Conference on Future Computer Sciences and Application.

[4]  Calton Pu,et al.  An Analysis of Performance Interference Effects in Virtual Environments , 2007, 2007 IEEE International Symposium on Performance Analysis of Systems & Software.

[5]  Ping Wang,et al.  Impact of virtual machine granularity on cloud computing workloads performance , 2010, 2010 11th IEEE/ACM International Conference on Grid Computing.

[6]  Sasko Ristov,et al.  Matrix multiplication performance analysis in virtualized shared memory multiprocessor , 2012, 2012 Proceedings of the 35th International Convention MIPRO.