An Experimental Study of the Impact of vCPU Provisioning on the Performance of a 2-Tier Application Running in Cloud

Leveraging Virtual Machine (VM) technologies to host multiple Web applications on the same physical machine can improve the resource utilization and thus save a cloud provider's provisioning cost. By allocating and scheduling virtual CPU (vCPU) resources for running VMs, a hosted Web application may achieve varying performances. Thus, when facing an end user with a specific SLA (Service Level Agreement) requirement, a cloud provider needs to decide how many vCPUs to provision for the target SaaS application to meet the user's end-to-end performance requirement while saving cost. However, it is a non-trivial task to economically determine an optimal resource configuration to meet an end user's SLA requirement. Accurate performance analytic models based on traditional modeling techniques such as queuing systems are difficult to construct for web applications. In this paper, we describe our experience in studying the impact of vCPU provisioning on the performance of 2-tier Web applications, through benchmarking a 2-tier web application in the context of provisioning vCPUs to SaaS applications in a cloud environment. From a cloud provider's perspective, we focus on a generic approach for SaaS benchmarking, which can help to study the impact of vCPU allocations on a Web application's performance and make the optimal vCPU allocation decisions to meet end users' QoS requirements while saving provisioning costs. Besides, based on our benchmark experimental results, we also propose an adaptive controller with a vCPU allocation optimization algorithm which can automatically adjust the vCPU allocations to meet the end users' workload requirements.

[1]  Adam Wierman,et al.  Open Versus Closed: A Cautionary Tale , 2006, NSDI.

[2]  Stefan Tai,et al.  What Are You Paying For? Performance Benchmarking for Infrastructure-as-a-Service Offerings , 2011, 2011 IEEE 4th International Conference on Cloud Computing.

[3]  Rajkumar Buyya,et al.  Market-Oriented Cloud Computing: Vision, Hype, and Reality for Delivering IT Services as Computing Utilities , 2008, 2008 10th IEEE International Conference on High Performance Computing and Communications.

[4]  Chao Li,et al.  Understanding the Impact of vCPU Scheduling on DVFS-Based Power Management in Virtualized Cloud Environment , 2014, 2014 IEEE 22nd International Symposium on Modelling, Analysis & Simulation of Computer and Telecommunication Systems.

[5]  Calton Pu,et al.  Variations in Performance Measurements of Multi-core Processors: A Study of n-Tier Applications , 2013, 2013 IEEE International Conference on Services Computing.

[6]  Calton Pu,et al.  Variations in Performance and Scalability When Migrating n-Tier Applications to Different Clouds , 2011, 2011 IEEE 4th International Conference on Cloud Computing.

[7]  Radu Prodan,et al.  Performance Analysis and Benchmarking of the Intel SCC , 2011, 2011 IEEE International Conference on Cluster Computing.

[8]  Randy H. Katz,et al.  A view of cloud computing , 2010, CACM.

[9]  Calton Pu,et al.  Economical and Robust Provisioning of N-Tier Cloud Workloads: A Multi-level Control Approach , 2011, 2011 31st International Conference on Distributed Computing Systems.

[10]  Yuebin Bai,et al.  Achieving High Throughput by Transparent Network Interface Virtualization on Multi-core Systems , 2010, 2010 IEEE Second International Conference on Cloud Computing Technology and Science.