Profiling and Modeling Resource Usage of Virtualized Applications Timothy Wood 1, Ludmila Cherkasova 2, Kivanc Ozonat 2, and Prashant Shenoy 1 1 University.

Slides:



Advertisements
Similar presentations
VM Interference and Placement for Server Consolidation Umesh Bellur IIT Bombay.
Advertisements

Diagnosing Performance Overheads in the Xen Virtual Machine Environment Aravind Menon Willy Zwaenepoel EPFL, Lausanne Jose Renato Santos Yoshio Turner.
Topics to be discussed Introduction Performance Factors Methodology Test Process Tools Conclusion Abu Bakr Siddiq.
Performance Testing - Kanwalpreet Singh.
Chapter 11 – Virtual Memory Management
1 Sizing the Streaming Media Cluster Solution for a Given Workload Lucy Cherkasova and Wenting Tang HPLabs.
Virtualization Dr. Michael L. Collard
Difference Engine: Harnessing Memory Redundancy in Virtual Machines by Diwaker Gupta et al. presented by Jonathan Berkhahn.
VMware Capacity Planner 2.7 Discussion and Demo from Engineering May 2009.
Cloud Computing Resource provisioning Keke Chen. Outline  For Web applications statistical Learning and automatic control for datacenters  For data.
Pankaj Kumar Qinglan Zhang Sagar Davasam Sowjanya Puligadda Wei Liu
Proactive Prediction Models for Web Application Resource Provisioning in the Cloud _______________________________ Samuel A. Ajila & Bankole A. Akindele.
XENMON: QOS MONITORING AND PERFORMANCE PROFILING TOOL Diwaker Gupta, Rob Gardner, Ludmila Cherkasova 1.
Memory Buddies: Exploiting Page Sharing for Smart Colocation in Virtualized Data Centers Timothy Wood, Gabriel Tarasuk-Levin, Prashant Shenoy, Peter Desnoyers*,
Efficient Autoscaling in the Cloud using Predictive Models for Workload Forecasting Roy, N., A. Dubey, and A. Gokhale 4th IEEE International Conference.
Towards High-Availability for IP Telephony using Virtual Machines Devdutt Patnaik, Ashish Bijlani and Vishal K Singh.
1 Virtual Machine Resource Monitoring and Networking of Virtual Machines Ananth I. Sundararaj Department of Computer Science Northwestern University July.
An Adaptable Benchmark for MPFS Performance Testing A Master Thesis Presentation Yubing Wang Advisor: Prof. Mark Claypool.
Improving Proxy Cache Performance: Analysis of Three Replacement Policies Dilley, J.; Arlitt, M. A journal paper of IEEE Internet Computing, Volume: 3.
Virtual Machines Measure Up John Staton Karsten Steinhaeuser University of Notre Dame December 15, 2005 Graduate Operating Systems, Fall 2005 Final Project.
Chapter 11 – Virtual Memory Management Outline 11.1 Introduction 11.2Locality 11.3Demand Paging 11.4Anticipatory Paging 11.5Page Replacement 11.6Page Replacement.
ENFORCING PERFORMANCE ISOLATION ACROSS VIRTUAL MACHINES IN XEN Diwaker Gupta, Ludmila Cherkasova, Rob Gardner, Amin Vahdat Middleware '06 Proceedings of.
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Virtualization in Data Centers Prashant Shenoy
© 2008 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Automated Workload Management in.
Virtualization for Cloud Computing
Resource Management in Virtualization-based Data Centers Bhuvan Urgaonkar Computer Systems Laboratory Pennsylvania State University Bhuvan Urgaonkar Computer.
Load Test Planning Especially with HP LoadRunner >>>>>>>>>>>>>>>>>>>>>>
Measuring zSeries System Performance Dr. Chu J. Jong School of Information Technology Illinois State University 06/11/2012 Sponsored in part by Deer &
U NIVERSITY OF M ASSACHUSETTS, A MHERST Department of Computer Science Black-box and Gray-box Strategies for Virtual Machine Migration Timothy Wood, Prashant.
Generating Adaptation Policies for Multi-Tier Applications in Consolidated Server Environments College of Computing Georgia Institute of Technology Gueyoung.
Virtualization Lab 3 – Virtualization Fall 2012 CSCI 6303 Principles of I.T.
SAIGONTECH COPPERATIVE EDUCATION NETWORKING Spring 2010 Seminar #1 VIRTUALIZATION EVERYWHERE.
SAIGONTECH COPPERATIVE EDUCATION NETWORKING Spring 2009 Seminar #1 VIRTUALIZATION EVERYWHERE.
Predicting performance of applications and infrastructures Tania Lorido 27th May 2011.
Bottlenecks: Automated Design Configuration Evaluation and Tune.
Xen Overview for Campus Grids Andrew Warfield University of Cambridge Computer Laboratory.
Performance Study on Virtual Machine Hypervisors.
Improving Network I/O Virtualization for Cloud Computing.
Profile Driven Component Placement for Cluster-based Online Services Christopher Stewart (University of Rochester) Kai Shen (University of Rochester) Sandhya.
Power and Performance Modeling in a Virtualized Server System M. Pedram and I. Hwang Department of Electrical Engineering Univ. of Southern California.
IISWC 2007 Panel Benchmarking in the Web 2.0 Era Prashant Shenoy UMass Amherst.
RECON: A TOOL TO RECOMMEND DYNAMIC SERVER CONSOLIDATION IN MULTI-CLUSTER DATACENTERS Anindya Neogi IEEE Network Operations and Management Symposium, 2008.
©NEC Laboratories America 1 Huadong Liu (U. of Tennessee) Hui Zhang, Rauf Izmailov, Guofei Jiang, Xiaoqiao Meng (NEC Labs America) Presented by: Hui Zhang.
Politecnico di Torino Dipartimento di Automatica ed Informatica TORSEC Group Performance of Xen’s Secured Virtual Networks Emanuele Cesena Paolo Carlo.
© 2006 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Profiling and Modeling Resource Usage.
Session objectives Discuss whether or not virtualization makes sense for Exchange 2013 Describe supportability of virtualization features Explain sizing.
A Regression-Based Analytic Model for Dynamic Resource Provisioning of Multi-Tier Applications Qi Zhang College of William and Mary Williamsburg, VA 23187,
Server Virtualization
 Virtual machine systems: simulators for multiple copies of a machine on itself.  Virtual machine (VM): the simulated machine.  Virtual machine monitor.
A dynamic optimization model for power and performance management of virtualized clusters Vinicius Petrucci, Orlando Loques Univ. Federal Fluminense Niteroi,
Active Sampling for Accelerated Learning of Performance Models Piyush Shivam, Shivnath Babu, Jeff Chase Duke University.
Embedded System Lab. 정범종 A_DRM: Architecture-aware Distributed Resource Management of Virtualized Clusters H. Wang et al. VEE, 2015.
Fault Tolerance Benchmarking. 2 Owerview What is Benchmarking? What is Dependability? What is Dependability Benchmarking? What is the relation between.
An Investigation of Xen and PTLsim for Exploring Latency Constraints of Co-Processing Units Grant Jenks UCLA.
Modeling Virtualized Environments in Simalytic ® Models by Computing Missing Service Demand Parameters CMG2009 Paper 9103, December 11, 2009 Dr. Tim R.
Full and Para Virtualization
Managing Web Server Performance with AutoTune Agents by Y. Diao, J. L. Hellerstein, S. Parekh, J. P. Bigus Presented by Changha Lee.
Operating-System Structures
1 Exploiting Nonstationarity for Performance Prediction Christopher Stewart (University of Rochester) Terence Kelly and Alex Zhang (HP Labs)
Kingfisher: A System for Elastic Cost-aware Provisioning in the Cloud
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Understanding Virtualization Overhead.
Capacity Planning in a Virtual Environment Chris Chesley, Sr. Systems Engineer
LIOProf: Exposing Lustre File System Behavior for I/O Middleware
If you have a transaction processing system, John Meisenbacher
Data Summit 2016 H104: Building Hadoop Applications Abhik Roy Database Technologies - Experian LinkedIn Profile:
Introduction to Performance Tuning Chia-heng Tu PAS Lab Summer Workshop 2009 June 30,
Virtualization Dr. Michael L. Collard
Exploiting Sharing for Data Center Consolidation
Comparison of the Three CPU Schedulers in Xen
Xen Network I/O Performance Analysis and Opportunities for Improvement
Presentation transcript:

Profiling and Modeling Resource Usage of Virtualized Applications Timothy Wood 1, Ludmila Cherkasova 2, Kivanc Ozonat 2, and Prashant Shenoy 1 1 University of Massachusetts, Amherst, 2 HP Labs, Palo Alto, 1 Middleware '08 Proceedings of the 9th ACM/IFIP/USENIX International Conference on Middleware

Outline Introduction Problem Definition Platform Profiling Model Generation Experimental Evaluation Discussion Conclusions 2

Introduction 3 Virtualization can optimize resource sharing among applications hosted in different VMs – the ability to quickly repurpose server capacity on demand – respond more effectively to changing business conditions Accurate performance models become instrumental for enabling applications to be consolidated, optimally placed and provided with the necessary resources A trace-based approach for the design of workload placement services – that assesses permutations and combinations of workload patterns in order to determine the optimal stacking functions

Introduction Capacity Planning in Virtual Environment Challenges – Apps are characterized by a collection of resource usage traces in native environment – Virtualization overheads In this work, design a general approach for estimating the CPU requirements of applications when they are transferred to a virtual environment 4

Introduction Our approach has the following Key Components – A selected set of microbenchmarks to profile the different types of virtualization overhead on a given platform (to create two resource usage profiles: 1. native 2. virtualized ) – Using a regression-based approach we create a model that maps the native system usage profile into the virtualized one Perform an additional analysis to filter out microbenchmark data with high error against the obtained regression-based model 5

Problem Definition Server consolidation is an approach to reduce the total number of servers – in response to the problem of server sprawl (a situation in which multiple, underutilized servers take up more space and consume more resources than can be justified by their workloads) Virtual Machine Monitors (VMMs) enable diverse applications – to run in isolated environments on a shared hardware platform – provide a degree of fault and performance isolation between the applications 6

Problem Definition A typical approach for evaluating which workloads can be efficiently consolidated together – based on multi-dimensional “binpacking” of resource usage traces – application is characterized by its CPU, I/0 and memory usage – finds a combination of workloads with resource requirements (not exceed the available server resources) Resource requirements can increase due to virtualization overheads It is important to know what an application’s resource needs are going to be prior to transitioning it to the virtual environment 7

Xen and VMware ESX server Two popular I/O models for VMs 8

Problem Definition We focus on estimating only CPU utilization since other metrics (such as disk and network request rates) are not directly impacted by the virtualization 9 ?

Our Approach Automated robust model generation Run benchmark set on native and virtual platforms – Performs a range of I/O and CPU intensive tasks – Gather resource traces Build model of Native --> Virtual relationship – Use linear regression techniques – Model is specific to platform, but not applications 10

Platform Profiling Microbenchmark Requirements: must be able to apply a range of workload intensities – creating a suite of microbenchmarks that can be configured to generate workloads of different intensities i.e., capable of generating different networking/disk access rates and consume different CPU amounts should run nearly-identical in both native and virtual environments – avoid benchmarks with a strong feedback loop since virtualization overheads may increase latency and distort the resource usage over time – our models are primarily designed for open loop applications 11

Platform Profiling Microbenchmark Workloads: Using a client-server style setup in our benchmarks Benchmark types: – CPU-intensive: calculates Fibonacci series – Network-intensive: download and upload files – Disk-intensive: read and write files Split each of the basic benchmark types into five different intensities ranging from 10% load to 90% load – maximum load that a server can handle is determined by increasing the benchmark requests until either the virtual machine or Dom-0 CPU becomes saturated Simplicity of implementation based on httperf, Apache Jmeter, Apache Web Server and PHP 12

Platform Resource Usage Profiles Gather resource utilization traces to define the platform profile used as the training data for the model – Within the native system, gather information about eleven different resource metrics (they can easily be gathered with low overhead) – Prior to Xen version 3.0.3, incoming network packets were passed between Dom-0 and Dom-U by flipping ownership of memory pages – Newer versions of Xen directly copy packets from Dom-0 to Dom-U 13

Model Generation Two models are created: – Predicts the CPU requirement of the virtual machine running the application – Predicts the Dom0 CPU requirements when it performs I/O processing on behalf of the guest domain The model creation employs the following three key components – A robust linear regression algorithm that is used to lessen the impact of outliers – A stepwise regression approach that is employed to include only the most statistically significant metrics – A model refinement algorithm that is used for post-processing the training data to eliminate or rerun erroneous benchmarks 14

Model Creation 15 … Model VM: Set of equations to solve: … Model Dom-0: Set of equations to solve:

Stepwise Linear Regression To decrease the impact of occasional bad measurements and outliers (reweighted least squares)[12] – uses a bisquare weighting function which lessens the weight and the impact of data points with high error To create a model which utilizes only the statistically significant metrics and avoids overfitting the data – use stepwise linear regression to determine which set of input metrics are the best predictors for the output variable – starts with an empty model, and iteratively selects a new metric to add based on a significance test – (ex. VM: User Space CPU, Kernel CPU, RX Packets) P. W. Holland and R. E. Welsch. Robust regression using iteratively reweighted least-squares. In Communications in Statistics - Theory and Methods 6.9. Oct. 07.

Model Refinement 17

Model Application Once a model has been created, it can be applied to resource utilization traces of other applications in order to predict what their CPU requirements would be if transferred to the virtual environment Resource usage traces of the application are obtained by monitoring the application in its native environment over time (eleven resource metrics ) 18

Evaluation: Implementation Details Two hardware platforms – HP ProLiant DL385, 2-way AMD Opteron, 2.6GHz, 64-bit – HP ProLiant DL580, 4-way Intel Xeon, 1.6GHz, 32-bit Two applications: – RUBiS (auction site, modeled after e-Bay) – TPC-W (e-commerce site, modeled after Amazon.com) Monitoring – Native: sysstat – Virtual: xenmon and xentop – Measurements: 30 sec intervals 19

Evaluation: Importance of Modeling I/O Is it necessary to look at resources other than just total CPU? How accurate such a simplified model for predicting the CPU requirement of VM ? 20 5% 65%

Evaluation: Importance of Modeling I/O The CPU intensive application exhibits only a small virtualization overhead occurring for the VM CPU requirements and Dom-0 also has relatively low CPU needs The network intensive application has a significantly higher requirement in Dom-0 as well as a much larger increase in VM CPU requirements relative to the native CPU utilization 21

Evaluation: Benchmark Coverage Using a subset of benchmarks leads to a poor accuracy model 22

Evaluation: Benchmark Error Detection Automatic benchmark elimination can increase model accuracy 23

Evaluation: Model Accuracy Create a variable rate workload for RUBiS by incrementally spawning clients over a 30 minute period repeat twice The system is loaded by between 150 and 700 simultaneous clients 24 on the Intel system

Evaluation: Cross Platform Modeling Using a single model for different architectures is ineffective (apply the model for the Intel system to the AMD system) 25

Evaluation: Cross Platform Modeling the Intel system requires approximately 1.7 times as much CPU in the virtual case as it does natively (AMD 1.4 times) 26

Discussion: Application Behavior Impact of application behavior on resource use processing time indicated by the width of the rectangles a is the time from the start of one request until the start of the next b is the time from the end of one request to the start of the next the estimated resource utilization produced by our model for the application with a feedback loop might be higher than in reality – Such an application might consume CPU resources in virtualized environment slower than in native 27

Understanding Application Performance The models – can accurately predict the changes in resource requirements for a virtualized application – cannot directly model how application performance will change (response time) To accurately predict this performance change would necessitate carefully tailored, application specific models Our approach helps in estimating the resource requirements that are necessary for the initial application placement in VM – After, specialized workload management tools may be used [15, 13] to dynamically adjust system resources to support the required application performance IBM Enterprise Workload Manager HP-UX Workload Manager

Conclusion This work designed – an automated approach for profiling different types of virtualization overhead on a given platform – A regression-based model that maps the native system profile into a virtualized one The evaluation shows – our automated model generation procedure effectively characterizes the different virtualization overheads of two diverse hardware platforms – have a median prediction error of less than 5% for both the RUBiS [3] and TPC-W [31] benchmarks 29