Feedback control techniques for performance management of computing systems

  • Authors:
  • Edward D. Lazowska;Sujay Parekh

  • Affiliations:
  • University of Washington;University of Washington

  • Venue:
  • Feedback control techniques for performance management of computing systems
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Despite the prevalence of feedback-based solutions in computing systems, controller designers lack the tools needed to manage feedback functions in a systematized way. Their ad hoc approach is especially problematic for automating the tuning of complex middleware that experiences a wide variance in system loads and activities. As a result, systems suffer from instabilities and inefficiencies and fail to achieve their pre-determined performance criteria. This dissertation draws from the discipline of control theory to offer both a structured methodology for automating the performance tuning of computing systems as well as specific solutions derived by applying this methodology to three deployed systems. In so doing, we enrich the controller designers' toolkit, lower the total cost of ownership of IT systems, and enhance the quality of service for end users. In our reusable methodology, we first map the performance tuning problem into an appropriate control architecture. We then assess the measurability and controllability of the target system; this may suggest altering or augmenting available sensors and actuators. Next, we build quantitative dynamic models of the target system's behavior. We tackle this key challenge empirically: we treat the systems as a black box, run controlled experiments to collect calibration data, and use statistical methods to construct quantitative models. Finally, we use control theoretic tools with these models to design stable controllers with the desired dynamic closed-loop properties. Using this general methodology, we address three representative performance management problems in three widely used complex server software systems: (a) controlling session admission in the Lotus Notes server, (b) regulating CPU and memory consumption in the Apache web server, and (c) throttling background work in the DB2 Universal Database™. In addition to manifesting online tuning problems, these systems highlight a set of common and serious issues, such as delays and inaccuracies in sensor feedback, nonlinearity, multiple interacting tuning knobs, and system behavior that changes over time. We demonstrate how to apply control theory to design and parameterize simple but fast online control algorithms that produce stable and responsive closed-loop systems. We show that simple control algorithms that assume low-order system models are surprisingly effective in practice.