An evaluation of multi-model self-managing control schemes for adaptive performance management of software systems

Due to the increasing complexity of software systems and the dynamic unpredictable environments they operate in, methodologies to incorporate self-adaptation into these systems have been investigated in recent years. The feedback control loop has been one of the key concepts used in building self-adaptive software systems to manage their performance among other quality aspects. In order to design an effective feedback control loop for a software system, modeling the behavior of the software system with sufficient accuracy is paramount. In general, there are many environmental conditions and system states that impact on the performance of a software system. As a consequence, it is impractical to characterize the diverse behavior of such a software system using a single system model. To represent such highly nonlinear behavior and to provide effective runtime control, the design, integration and self-management (automatic switching) of multiple system models and controllers are required. In this paper, we investigate a control engineering approach, called Multi-Model Switching and Tuning (MMST) adaptive control, to assess its effectiveness for the adaptive performance management of software systems. We have conducted a range of experiments with two of the most promising MMST adaptive control schemes under different operating conditions of a representative software system. The experiment results have shown that the MMST control schemes are superior in managing the performance of the software system, compared with a number of other control schemes based on a single model. We have also investigated the impact of the configuration parameters for the MMST schemes to provide design guidance. A library of MMST schemes has been implemented to aid the software engineer in developing MMST-based self-managing control schemes for software systems.

[1]  Robert Shorten,et al.  Online Center of Gravity Estimation in Automotive Vehicles using Multiple Models and Switching , 2006, 2006 9th International Conference on Control, Automation, Robotics and Vision.

[2]  Liuping Wang,et al.  Model Predictive Control System Design and Implementation Using MATLAB , 2009 .

[3]  Yixin Diao,et al.  Managing Web server performance with AutoTune agents , 2003 .

[4]  Ladan Tahvildari,et al.  Self-adaptive software: Landscape and research challenges , 2009, TAAS.

[5]  Yixin Diao,et al.  Feedback Control of Computing Systems , 2004 .

[6]  Mieczyslaw M. Kokar,et al.  Control theory-based foundations of self-controlling software , 1999, IEEE Intell. Syst..

[7]  T.F. Abdelzaher,et al.  Web server QoS management by adaptive content delivery , 1999, 1999 Seventh International Workshop on Quality of Service. IWQoS'99. (Cat. No.98EX354).

[8]  Jeff Magee,et al.  From goals to components: a combined approach to self-management , 2008, SEAMS '08.

[9]  David Garlan,et al.  Rainbow: cost-effective software architecture-based self-adaptation , 2008 .

[10]  Xiaoyun Zhu,et al.  Adaptive entitlement control of resource containers on shared servers , 2005, 2005 9th IFIP/IEEE International Symposium on Integrated Network Management, 2005. IM 2005..

[11]  Karl Johan Åström,et al.  Adaptive Control , 1989, Embedded Digital Control with Microcontrollers.

[12]  Joseph L. Hellerstein Self-Managing Systems: A Control Theory Foundation , 2004, LCN.

[13]  Kumpati S. Narendra,et al.  Adaptive control of discrete-time systems using multiple models , 2000, IEEE Trans. Autom. Control..

[14]  Naresh K. Sinha,et al.  Modern Control Systems , 1981, IEEE Transactions on Systems, Man, and Cybernetics.

[15]  Mary Shaw,et al.  Engineering Self-Adaptive Systems through Feedback Loops , 2009, Software Engineering for Self-Adaptive Systems.

[16]  Kumpati S. Narendra,et al.  Adaptive control using multiple models , 1997, IEEE Trans. Autom. Control..

[17]  Jun Han,et al.  A Study on Managing the Performance and Resources of a Business Process Engine using Nonlinear and Switching Control Systems , 2012 .

[18]  Seyed Masoud Sadjadi,et al.  Composing adaptive software , 2004, Computer.

[19]  Jeff Magee,et al.  Dynamic structure in software architectures , 1996, SIGSOFT '96.

[20]  Nagarajan Kandasamy,et al.  Risk-Aware Limited Lookahead Control for Dynamic Resource Provisioning in Enterprise Computing Systems , 2006 .

[21]  Xiaoyun Zhu,et al.  Utilization and SLO-Based Control for Dynamic Sizing of Resource Partitions , 2005, DSOM.

[22]  Xiaoyun Zhu,et al.  Utility-driven workload management using nested control design , 2006, 2006 American Control Conference.

[23]  Raymond Hanus,et al.  Anti-windup, bumpless, and conditioned transfer techniques for PID controllers , 1996 .

[24]  Kumpati S. Narendra,et al.  Improving transient response of adaptive control systems using multiple models and switching , 1993, Proceedings of 32nd IEEE Conference on Decision and Control.

[25]  Junyong Zhai,et al.  Intelligent control using multiple models based on on-line learning , 2006 .

[26]  K. S. Narendra,et al.  Adaptive control using multiple models, switching, and tuning , 2000, Proceedings of the IEEE 2000 Adaptive Systems for Signal Processing, Communications, and Control Symposium (Cat. No.00EX373).

[27]  Kang G. Shin,et al.  What does control theory bring to systems research? , 2009, OPSR.

[28]  Xiaoyun Zhu,et al.  Triage: Performance differentiation for storage systems using adaptive control , 2005, TOS.

[29]  Chenyang Lu,et al.  An adaptive control framework for QoS guarantees and its application to differentiated caching , 2002, IEEE 2002 Tenth IEEE International Workshop on Quality of Service (Cat. No.02EX564).

[30]  Katsuhiko Ogata,et al.  Modern Control Engineering , 1970 .

[31]  Sang Hyuk Son,et al.  A feedback control approach for guaranteeing relative delays in Web servers , 2001, Proceedings Seventh IEEE Real-Time Technology and Applications Symposium.

[32]  Liuping Wang,et al.  Hammerstein-Wiener nonlinear model based predictive control for relative QoS performance and resource management of software systems , 2012 .

[33]  Isis Truck,et al.  From Data Center Resource Allocation to Control Theory and Back , 2010, 2010 IEEE 3rd International Conference on Cloud Computing.

[34]  Marin Litoiu,et al.  A real-time adaptive control of autonomic computing environments , 2007, CASCON.

[35]  David Garlan,et al.  Rainbow: architecture-based self-adaptation with reusable infrastructure , 2004 .

[36]  Ioan Doré Landau,et al.  Robust adaptive control of a flexible transmission system using multiple models , 2000, IEEE Trans. Control. Syst. Technol..

[37]  Calton Pu,et al.  SWiFT: a feedback control and dynamic reconfiguration toolkit , 1998 .

[38]  Dimitar Petrov Filev,et al.  Intelligent adaptive control using multiple models , 2001, Proceeding of the 2001 IEEE International Symposium on Intelligent Control (ISIC '01) (Cat. No.01CH37206).

[39]  Kumpati S. Narendra,et al.  Adaptation and learning using multiple models, switching, and tuning , 1995 .

[40]  Bradley R. Schmerl,et al.  Rainbow: Architecture-Based Self-Adaptation with Reusable Infrastructure , 2004, Computer.

[41]  S. Parekh,et al.  MIMO control of an Apache web server: modeling and controller design , 2002, Proceedings of the 2002 American Control Conference (IEEE Cat. No.CH37301).

[42]  Yixin Diao,et al.  Using MIMO linear control for load balancing in computing systems , 2004, Proceedings of the 2004 American Control Conference.

[43]  Joseph L. Hellerstein,et al.  Using Control Theory to Achieve Service Level Objectives In Performance Management , 2002, Real-Time Systems.

[44]  Sang Hyuk Son,et al.  Feedback Control Architecture and Design Methodology for Service Delay Guarantees in Web Servers , 2006, IEEE Transactions on Parallel and Distributed Systems.

[45]  Kumpati S. Narendra,et al.  Adaptive control using multiple models, switching and tuning , 2003 .

[46]  Nagarajan Kandasamy,et al.  Self-optimization in computer systems via on-line control: application to power management , 2004 .

[47]  Lennart Ljung,et al.  System Identification: Theory for the User , 1987 .

[48]  Xiaoyun Zhu,et al.  An adaptive optimal controller for non-intrusive performance differentiation in computing services , 2005, 2005 International Conference on Control and Automation.

[49]  Kang G. Shin,et al.  Automated control of multiple virtualized resources , 2009, EuroSys '09.