Evaluating approaches to resource demand estimation

Abstract Resource demands are a key parameter of stochastic performance models that needs to be determined when performing a quantitative performance analysis of a system. However, the direct measurement of resource demands is not feasible in most realistic systems. Therefore, statistical approaches that estimate resource demands based on coarse-grained monitoring data (e.g., CPU utilization, and response times) have been proposed in the literature. These approaches have different assumptions and characteristics that need to be considered when estimating resource demands. This paper surveys the state-of-the-art in resource demand estimation and proposes a classification scheme for estimation approaches. Furthermore, it contains an experimental evaluation comparing the impact of different factors (monitoring window size, number of workload classes, load level, collinearity, and model mismatch) on the estimation accuracy of seven different approaches. The classification scheme and the experimental comparison helps performance engineers to select an approach to resource demand estimation that fulfills the requirements of a given analysis scenario.

[1]  D. Simon Optimal State Estimation: Kalman, H Infinity, and Nonlinear Approaches , 2006 .

[2]  Marin Litoiu,et al.  Tracking time-varying parameters in software systems with extended Kalman filters , 2015, CASCON.

[3]  Giuliano Casale,et al.  Bayesian Service Demand Estimation Using Gibbs Sampling , 2013, 2013 IEEE 21st International Symposium on Modelling, Analysis and Simulation of Computer and Telecommunication Systems.

[4]  Qi Zhang,et al.  A Regression-Based Analytic Model for Dynamic Resource Provisioning of Multi-Tier Applications , 2007, Fourth International Conference on Autonomic Computing (ICAC'07).

[5]  Fan Zhang,et al.  Parameter inference of queueing models for IT systems using end-to-end measurements , 2004, SIGMETRICS '04/Performance '04.

[6]  Stochastic Relaxation , 2014, Computer Vision, A Reference Guide.

[7]  Jerome A. Rolia,et al.  Parameter estimation for performance models of distributed application systems , 1995, CASCON.

[8]  Bernhard Schölkopf,et al.  A tutorial on support vector regression , 2004, Stat. Comput..

[9]  Ilia Petrov,et al.  From Active Data Management to Event-Based Systems and More , 2010, Lecture Notes in Computer Science.

[10]  Christopher Stewart,et al.  Exploiting nonstationarity for performance prediction , 2007, EuroSys '07.

[11]  Samuel Kounev,et al.  Performance Engineering of Distributed Component-Based Systems - Benchmarking, Modeling and Performance Prediction , 2005 .

[12]  George L. Nemhauser,et al.  Handbooks in operations research and management science , 1989 .

[13]  Edward D. Lazowska,et al.  Quantitative system performance - computer system analysis using queueing network models , 1983, Int. CMG Conference.

[14]  Jerome A. Rolia,et al.  Correlating resource demand information with ARM data for application services , 1998, WOSP '98.

[15]  Virgílio A. F. Almeida,et al.  Capacity Planning for Web Performance: Metrics, Models, and Methods , 1998 .

[16]  Jerome A. Rolia,et al.  MODE: Mix Driven On-line Resource Demand Estimation , 2011, 2011 7th International Conference on Network and Service Management.

[17]  Zdenek Dostl Optimal Quadratic Programming Algorithms: With Applications to Variational Inequalities , 2009 .

[18]  Jerome A. Rolia,et al.  Consistency issues in distributed application performance metrics , 1994, CASCON.

[19]  Asser N. Tantawi,et al.  Analytic modeling of multitier Internet applications , 2007, TWEB.

[20]  P. Young,et al.  Time series analysis, forecasting and control , 1972, IEEE Transactions on Automatic Control.

[21]  Asser N. Tantawi,et al.  CPU demand for web serving: Measurement analysis and dynamic estimation , 2008, Perform. Evaluation.

[22]  Ralf Reussner,et al.  ByCounter: Portable Runtime Counting of Bytecode Instructions and Method Invocations , 2008 .

[23]  Ludmila Cherkasova,et al.  Measuring CPU Overhead for I/O Processing in the Xen Virtual Machine Monitor , 2005, USENIX ATC, General Track.

[24]  Jun Wei,et al.  Application-Level CPU Consumption Estimation: Towards Performance Isolation of Multi-tenancy Web Applications , 2012, 2012 IEEE Fifth International Conference on Cloud Computing.

[25]  Connie U. Smith,et al.  Performance Engineering of Software Systems , 1990, SIGMETRICS Perform. Evaluation Rev..

[26]  Stephen Dawson,et al.  DEC: Service Demand Estimation with Confidence , 2012, IEEE Transactions on Software Engineering.

[27]  Richard Mortier,et al.  Using Magpie for Request Extraction and Workload Modelling , 2004, OSDI.

[28]  Erkki Oja,et al.  Independent component analysis: algorithms and applications , 2000, Neural Networks.

[29]  Asser N. Tantawi,et al.  Real-time performance modeling for adaptive software systems , 2009, VALUETOOLS.

[30]  Susan L. Graham,et al.  Gprof: A call graph execution profiler , 1982, SIGPLAN '82.

[31]  T. Kelly,et al.  Predicting Performance in Distributed Enterprise Applications , 2006 .

[32]  Paolo Cremonesi,et al.  Service Time Estimation with a Refinement Enhanced Hybrid Clustering Algorithm , 2010, ASMTA.

[33]  NetComm Limited SNMP(Simple network management protocol) , 2010 .

[34]  Jorge Nocedal,et al.  A trust region method based on interior point techniques for nonlinear programming , 2000, Math. Program..

[35]  Gwilym M. Jenkins,et al.  Time series analysis, forecasting and control , 1971 .

[36]  Robert J. Hall,et al.  Call path profiling , 1992, International Conference on Software Engineering.

[37]  Falko Bause,et al.  Queueing Petri Nets-A formalism for the combined qualitative and quantitative analysis of systems , 1993, Proceedings of 5th International Workshop on Petri Nets and Performance Models.

[38]  Jun Wei,et al.  A Statistical Approach for Estimating CPU Consumption in Shared Java Middleware Server , 2011, 2011 IEEE 35th Annual Computer Software and Applications Conference.

[39]  Marin Litoiu,et al.  Tracking adaptive performance models using dynamic clustering of user classes , 2011, ICPE '11.

[40]  Mor Harchol-Balter,et al.  Performance Modeling and Design of Computer Systems: Queueing Theory in Action , 2013 .

[41]  Giuliano Casale,et al.  An Offline Demand Estimation Method for Multi-threaded Applications , 2013, 2013 IEEE 21st International Symposium on Modelling, Analysis and Simulation of Computer and Telecommunication Systems.

[42]  Ralf H. Reussner,et al.  Ginpex: deriving performance-relevant infrastructure properties through goal-oriented experiments , 2011, QoSA-ISARCS '11.

[43]  Virgílio A. F. Almeida,et al.  Performance by Design - Computer Capacity Planning By Example , 2004 .

[44]  Stephen Dawson,et al.  Estimating service resource consumption from response time measurements , 2009, VALUETOOLS.

[45]  Ralf H. Reussner,et al.  TimerMeter: Quantifying Properties of Software Timers for System Analysis , 2009, 2009 Sixth International Conference on the Quantitative Evaluation of Systems.

[46]  Steffen Becker,et al.  The Palladio component model for model-driven performance prediction , 2009, J. Syst. Softw..

[47]  Ramesh Govindan,et al.  Automatic request categorization in internet services , 2008, PERV.

[48]  Asser N. Tantawi,et al.  Enhanced inferencing: estimation of a workload dependent performance model , 2009, VALUETOOLS.

[49]  Virgílio A. F. Almeida,et al.  Capacity Planning and Performance Modeling: From Mainframes to Client-Server Systems , 1994 .

[50]  Paolo Cremonesi,et al.  Indirect Estimation of Service Demands in the Presence of Structural Changes , 2012, 2012 Ninth International Conference on Quantitative Evaluation of Systems.

[51]  Gunter Bolch,et al.  Queueing Networks and Markov Chains , 2005 .

[52]  E. Oja,et al.  Independent Component Analysis , 2013 .

[53]  Haifeng Chen,et al.  Untangling mixed information to calibrate resource utilization in virtual machines , 2011, ICAC '11.

[54]  Daniel A. Menascé,et al.  A Method for Design and Performance Modeling of Client/Server Systems , 2000, IEEE Trans. Software Eng..

[55]  Ralf H. Reussner,et al.  Deriving performance-relevant infrastructure properties through model-based experiments with Ginpex , 2013, Software & Systems Modeling.

[56]  L. Leemis Applied Linear Regression Models , 1991 .

[57]  Donald Geman,et al.  Stochastic Relaxation, Gibbs Distributions, and the Bayesian Restoration of Images , 1984, IEEE Transactions on Pattern Analysis and Machine Intelligence.

[58]  S. Mohan,et al.  Performance Solutions: A Practical Guide to Creating Responsive, Scalable Software [Book Review] , 2003, IEEE Software.

[59]  J. Neter,et al.  Applied Linear Regression Models , 1983 .

[60]  Joseph Williams,et al.  Green: The New Computing Coat of Arms? , 2008, IT Professional.

[61]  Stephen Dawson,et al.  Resource demand modeling for multi-tier services , 2010, WOSP/SIPEW '10.

[62]  Marin Litoiu,et al.  Performance Model Estimation and Tracking Using Optimal Filters , 2008, IEEE Transactions on Software Engineering.

[63]  W. Marsden I and J , 2012 .

[64]  Myron Hlynka,et al.  Queueing Networks and Markov Chains (Modeling and Performance Evaluation With Computer Science Applications) , 2007, Technometrics.

[65]  Samuel Kounev,et al.  Automated extraction of palladio component models from running enterprise Java applications , 2009, VALUETOOLS.

[66]  Tim R. Norton Modeling Virtualized Environments in Simalytic Models by Computing Missing Service Demand Parameters , 2009, Int. CMG Conference.

[67]  Helmut Krcmar,et al.  Automatic Performance Model Generation for Java Enterprise Edition (EE) Applications , 2013, EPEW.

[68]  Mark S. Squillante,et al.  Workload service requirements analysis: a queueing network optimization approach , 2002, Proceedings. 10th IEEE International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunications Systems.

[69]  Kyo Chul Kang,et al.  Feature-Oriented Domain Analysis (FODA) Feasibility Study , 1990 .

[70]  Paolo Cremonesi,et al.  How to Select Significant Workloads in Performance Models , 2007, Int. CMG Conference.

[71]  Marin Litoiu,et al.  The use of optimal filters to track parameters of performance models , 2005, Second International Conference on the Quantitative Evaluation of Systems (QEST'05).

[72]  Daniel A. Menascé Computing Missing Service Demand Parameters for Performance Models , 2008, Int. CMG Conference.

[73]  Michael I. Jordan,et al.  Bayesian inference for queueing networks and modeling of internet services , 2010, 1001.3355.

[74]  Jordi Torres,et al.  Autonomic QoS control in enterprise Grid environments using online simulation , 2009, J. Syst. Softw..

[75]  Roberto Turrin,et al.  Robust Workload Estimation in Queueing Network Performance Models , 2008, 16th Euromicro Conference on Parallel, Distributed and Network-Based Processing (PDP 2008).

[76]  Samuel Kounev,et al.  SimQPN - A tool and methodology for analyzing queueing Petri net models by means of simulation , 2006, Perform. Evaluation.