CPU demand for web serving: Measurement analysis and dynamic estimation

Managing the resources in a large Web serving system requires knowledge of the resource needs for service requests of various types. In order to investigate the properties of Web traffic and its demand, we collected measurements of throughput and CPU utilization and performed some data analyses. First, we present our findings in relation to the time-varying nature of the traffic, the skewness of traffic intensity among the various types of requests, the correlation among traffic streams, and other system-related phenomena. Then, given such nature of web traffic, we devise and implement an on-line method for the dynamic estimation of CPU demand. Assessing resource needs is commonly performed using techniques such as off-line profiling, application instrumentation, and kernel-based instrumentation. Little attention has been given to the dynamic estimation of dynamic resource needs, relying only on external and high-level measurements such as overall resource utilization and request rates. We consider the problem of dynamically estimating dynamic CPU demands of multiple kinds of requests using CPU utilization and throughput measurements. We formulate the problem as a multivariate linear regression problem and obtain its basic solution. However, as our measurement data analysis indicates, one is faced with issues such as insignificant flows, collinear flows, space and temporal variations, and background noise. In order to deal with such issues, we present several mechanisms such as data aging, flow rejection, flow combining, noise reduction, and smoothing. We implemented these techniques in a Work Profiler component that we delivered as part of a broader system management product. We present experimental results from using this component in scenarios inspired by real-world usage of that product.

[1]  Jerome A. Rolia,et al.  Workload Analysis and Demand Prediction of Enterprise Data Center Applications , 2007, 2007 IEEE 10th International Symposium on Workload Characterization.

[2]  Timothy Roscoe,et al.  Resource overbooking and application profiling in shared hosting platforms , 2002, OSDI '02.

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

[4]  Peter J. Rousseeuw,et al.  Robust Regression and Outlier Detection , 2005, Wiley Series in Probability and Statistics.

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

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

[7]  Martin F. Arlitt,et al.  Web server workload characterization: the search for invariants , 1996, SIGMETRICS '96.

[8]  Laverne W. Stanton,et al.  Applied Regression Analysis: A Research Tool , 1990 .

[9]  A. E. Hoerl,et al.  Ridge regression: biased estimation for nonorthogonal problems , 2000 .

[10]  C. Murray Woodside,et al.  Using regression splines for software performance analysis , 2000, WOSP '00.

[11]  F. ArlittMartin,et al.  Web server workload characterization , 1996 .

[12]  Xiaoyun Zhu,et al.  Resource access management for a utility hosting enterprise applications , 2003, IFIP/IEEE Eighth International Symposium on Integrated Network Management, 2003..

[13]  Liria Matsumoto Sato,et al.  Load distribution for heterogeneous and non-dedicated clusters based on dynamic monitoring and differentiated services , 2003, 2003 Proceedings IEEE International Conference on Cluster Computing.

[14]  Allen B. Downey,et al.  The elusive goal of workload characterization , 1999, PERV.

[15]  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).

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

[17]  Haipeng Shen,et al.  Non‐parametric modelling of time‐varying customer service times at a bank call centre , 2006 .

[18]  Asser N. Tantawi,et al.  Performance management for cluster based Web services , 2003 .

[19]  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.

[20]  Jerome A. Rolia,et al.  Capacity Management and Demand Prediction for Next Generation Data Centers , 2007, IEEE International Conference on Web Services (ICWS 2007).

[21]  Yonathan Bard Performance Criteria and Measurement for a Time-Sharing System , 1971, IBM Syst. J..

[22]  Jerome A. Rolia,et al.  The Method of Layers , 1995, IEEE Trans. Software Eng..

[23]  Prashant J. Shenoy,et al.  Sharc: managing CPU and network bandwidth in shared clusters , 2004, IEEE Transactions on Parallel and Distributed Systems.