Tutorial: Introduction to Control Theory and Its Application to Feedback Computing

Tarek Abdelzaher (UIUC), Chenyang Lu (Washington University), Anders Robertsson (Lund University)

Cyber-Physical Systems Week (CPS Week 2013)

8:30am-12pm, April 8, 2013


Feedback control is central to managing computing systems and networks including, but not limited to, a broad range of cyber-physical systems and real-time systems. For example, feedback is employed to achieve response time objectives by taking resource actions such as adjusting scheduling priorities and bandwidth allocations. Unfortunately, software practitioners typically employ an ad hoc approach to the design of closed loop systems, often with undesirable results such as large oscillations or slow adaptation to changes in workloads. In other engineering disciplines (e.g., mechanical, electrical, and aeronautical engineering), control theory is used to analyze and design feedback loops. Control theory provides a way to determine if feedback loops are stable (e.g., avoid wild oscillations), accurate in their control (e.g., achieve the desired response time objectives), and settle quickly to their steady state values (e.g., to adjust to workload dynamics). Recently, control theory has been used in the design of many aspects of computing, with a few examples of commercial products designed using control theory. Examples of where control theory has been used include: networking protocols (e.g., new versions of TCP/IP), real time systems, web servers, database servers, multi-tier computing systems, and workload managers.

This tutorial provides an introduction to control theory for computer scientists with an emphasis on applications. The topics covered include:
1.    Introduction to control theory concepts and discrete-time linear systems.
2.    Application to CPU utilization and temperature control in real-time systems
(slides).
3.    Application to power and performance management in data centers.

Section 1 provides an introduction to key concepts. Included here are control goals (e.g., regulation, optimization, disturbance rejection); the control architecture (with examples from the Apache web server and the Notes email server); and control metrics (stability, settling time, overshoot, and steady state accuracy). Also included is a brief introduction to linear system theory, and the use of the z-transform to represent systems as transfer functions

Section 2 describes an application of model predictive control to distributed real-time systems. The system model has some interesting properties: single server/multi-server, centralized and distributed control, and with actuator constraints. These techniques have been implemented and evaluated in real-time CORBA middleware. It will also describe thermal control design for both single-core and multi-core real-time systems.

Section 3 considers the role of control in managing power and performance in servers and data centers. A key consideration here is the unintended interactions between control loops. This is illustrated for a large data center with multiple resource allocation policies in which two energy saving policies in a server farm interact so that the end result is to increase energy consumption. The section presents analysis techniques that allow a designer to identify such potentially adverse interactions.


Presumed Background of Attendees and Intended Audience

This tutorial is intended for an audience with interests in resource management of computing systems and computing networks. The presumed mathematical background is modest – knowledge of the geometric series.


Past Tutorials

Tarek Abdelzaher, Yixin Diao, Joseph L. Hellerstein, Chenyang Lu and Sharad Singhal, Tutorial: Recent Advances in the Application of Control Theory to Network and Service Management, IFIP/IEEE International Symposium on Integrated Network Management (IM'09), June 1, 2009.

Tarek Abdelzaher, Yixin Diao, Joseph L. Hellerstein,  Chenyang Lu and Xiaoyun Zhu,
Tutorial: Introduction to Control Theory and Its Application to Computing Systems, ACM International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS'08), June 2, 2008.

Tarek Abdelzaher, Yixin Diao, Joseph L. Hellerstein, Chenyang Lu and Xiaoyun Zhu, Introduction to Control Theory and its Application to Computing Systems, Performance Modeling and Engineering, Springer, 2008. (Book chapter for the SIGMETRICS'08 tutorial)