Automatic Derivation of Performance Prediction Models for Load-balancing Properties Based on Goal-oriented Measurements

In symmetric multiprocessing environments, the performance of a software system heavily depends on the application's parallelism, the scheduling and load-balancing policies of the operating system, and the infrastructure it is running on. The scheduling of tasks can influence the response time of an application by several orders of magnitude. Thus, detailed models of the operating system scheduler are essential for accurate performance predictions. However, building such models for schedulers and including them into performance prediction models involves a lot of effort. For this reason, simplified scheduler models are used for the performance evaluation of business information systems in general. In this work, we present an approach to derive load-balancing properties of general-purpose operating system (GPOS) schedulers automatically. Our approach uses goal-oriented measurements to derive performance models based on observations. Furthermore, the derived performance model is plugged into the Palladio Component Model (PCM), a model-based performance prediction approach. We validated the applicability of the approach and its prediction accuracy in a case study on different operating systems.

[1]  Adam Wierman,et al.  Classifying scheduling policies with respect to unfairness in an M/GI/1 , 2003, SIGMETRICS '03.

[2]  Mor Harchol-Balter,et al.  Analysis of multi-server systems via dimensionality reduction of markov chains , 2005 .

[3]  C. Murray Woodside,et al.  Resource Function Capture for Performance Aspects of Software Components and Sub-Systems , 2001, Performance Engineering.

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

[5]  Heiko Koziolek,et al.  Parametric Performance Contracts for Software Components with Concurrent Behaviour , 2007, Electron. Notes Theor. Comput. Sci..

[6]  Avelino Francisco Zorzo,et al.  Analytical Modeling for Operating System Schedulers on NUMA Systems , 2006, Electron. Notes Theor. Comput. Sci..

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

[8]  Jens Happe,et al.  Predicting software performance in symmetric multi-core and multiprocessor environments , 2009 .

[9]  Mor Harchol-Balter,et al.  Evaluation of Task Assignment Policies for Supercomputing Servers: The Case for Load Unbalancing and Fairness , 2004, Cluster Computing.

[10]  Avelino Francisco Zorzo,et al.  Operating system multilevel load balancing , 2006, SAC '06.

[11]  Sem C. Borst,et al.  Beyond processor sharing , 2007, PERV.

[12]  Samuel Kounev,et al.  Performance Modeling and Evaluation of Distributed Component-Based Systems Using Queueing Petri Nets , 2006, IEEE Transactions on Software Engineering.

[13]  Alan Fekete,et al.  Design-level performance prediction of component-based applications , 2005, IEEE Transactions on Software Engineering.

[14]  Paola Inverardi,et al.  Model-based performance prediction in software development: a survey , 2004, IEEE Transactions on Software Engineering.

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

[16]  Arif Ghafoor,et al.  Performance modeling of load-balancing algorithms using neural networks , 1994, Concurr. Pract. Exp..

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

[18]  Mary K. Vernon,et al.  The performance of multiprogrammed multiprocessor scheduling algorithms , 1990, SIGMETRICS '90.

[19]  Allan Clark,et al.  Formal Methods for Performance Evaluation , 2007 .

[20]  Steffen Becker,et al.  Model-Driven Generation of Performance Prototypes , 2008, SIPEW.