Feedback Control of Computing Systems M 1 Introduction
Feedback Control of Computing Systems M 1: Introduction Joseph L. Hellerstein IBM Thomas J Watson Research Center, NY hellers@us. ibm. com September 21, 2004 Feedback Control of Computing Systems © 2004 Hellerstein
Example: Control of Lotus Notes Architecture Admin Controller Max. Users Desired RIS RPCs Server RIS = RPCs in System Actual RIS Control Model Max. Users Desired RIS + r(k) 2 e(k) - u(k) Controller Notes Server Actual RIS y(k) Control error: e(k)=r(k)-y(k) System model: y(k)=(0. 43)y(k-1) +(0. 47)u(k-1) Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Lab Exercise Block Diagram Reference RIS + r* - ¢ Max. Users e(k) u(k) Controller Notes Server ARX* Models Actual RIS Control error: e(k)=r*-y(k) P controller: u(k)=Ke(k) System model: y(k)=(0. 43)y(k-1) +(0. 47)u(k-1) Spreadsheet file ctclass-M 1 v v Proportional controller: Maxusers(k+1) = K(r*--y(k)) What is the effect of K on Ø Accuracy: (want r*=y(k)=200) Ø Stability Ø Convergence rate Ø Overshoot *ARX is autoregressive with an external input 3 Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Application of CT to a DBMS Database Server Buffer Pools, Sorts, Package Cache, etc. Memory Tuner Statistics Collector Disks 59% Reduction in Total RT Agents TS=26, 342 Without Controller 4 TS=10, 680 With Controller Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Why Control Theory? • Stabililty 5 • Accuracy Unstable System • Settling time • Overshoot Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Goals, Structure, and Content ¢ Goals v ¢ Control theory “boot camp” for CS students Ø Be able to formulate and solve basic control problems Ø Know references so can solve more complex problems Structure v v Partitioned into eight 55 minute modules, with 5 minute breaks between modules Module organization Ø 40 -45 minutes of interactive lecture Ø 15 minute labs Reference for this class: “Feedback Control of Computing Systems”, Hellerstein, Diao, Parekh, Tilbury, Wiley, 2004. 6 Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Course Modules ¢ M 1: Introduction (Chapter 1) v v ¢ M 2: Signals and Z-Transforms (Chapter 3) v v ¢ v Content: transfer function definition; translating between transfer functions and ARX models; steady-state gain; poles; stability criteria; estimating settling times; Lab: Analysis of the Notes server M 4: Analyzing composed systems (Chapter 4) v v 7 Content: z-Transform representation of time signals; inverse z-Transforms; manipulating signals; infinite signals; final value theorem; Lab: Signal analysis M 3: Systems and transfer functions (Chapter 3) v ¢ Content: Control system architecture, goals, and metrics. Constructing ARX models (including initial conditions) Lab: Simulation and analysis of Notes server with a sensor Content: Combining transfer functions in series; simplifying block diagrams; feedback transfer functions; Lab: Analysis of a Notes feedback control system with and without a sensor Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Key Results from M 2 -M 4 U(z) G(z) Y(z) Adding signals: If {a(k)} and {b(k)} are signals, then {c(k)=a(k)+b(k)} has Z-Transform A(z)+B(z). A(z) + C(z) + B(z) Transfer functions in series U(z) G(z) W(z) H(z) Y(z) is equivalent to Stable if |a|<1, where a is the largest pole of G(z) U(z) G(z)H(z) Y(z) ssg of G(z) is 8 Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Outline ¢ M 5: Control analysis (Chapters 8, 9) v v ¢ M 6: Control design (Chapters 8, 9) v v ¢ Content: DB 2 utilities throttling; DB 2 self-tuning memory management M 8: Advanced topics (Chapter 11) v v 9 Content: Pole placement design methodology Extended group lab: Analysis of a load balancing system M 7: Real world examples (Various references) v ¢ Content: Basic controllers; impulse response; step response Lab: Analysis of controllers for Notes server system Content: Gain scheduling, self-tuning regulators, minimum variance control, fuzzy control Homework; Project Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Content ¢ ¢ Covers 60% of the material presented in a semester class at Columbia U Excludes v v 10 Modeling: System identification, multiple input multiple output (MIMO) models, nonlinear models Control: MIMO control, empirical tuning, adaptive control, stochastic control Tools: MATLAB Running examples: Apache HTTP server, M/M/1/K queueing system, streaming, load balancing Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
M 1: Lecture Reference: “Feedback Control of Computer Systems”, Chapter 1. 11 Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Control System Architecture Reference Input Controller Transduced Output Control Input Disturbance Input Target System Measured Output Transducer Components Given target system, transducer Target system: what is controlled Control theory finds controller Controller: exercises control that adjusts control input Transducer: translates measured outputs to achieve measured Data output in the presence of Reference input: objective disturbances. Control input: manipulated to affect output Disturbance input: other factors that affect the target system Transduced output: result of manipulation 12 Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Administrative IBM Lotus Domino Server Tasks Notes RPCs Client Records Server Notes Server Log Notes Architecture Reference RIS Client Max. Users Controller Max. Users Administrative Tasks Target System Actual Notes RIS Sensor Server Measured RIS Block Diagram 13 Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Closed Loop vs. Open Loop Reference CPU Keep. Alive Apache Web Server Controller Reference MEM Measured CPU Max. Clients Apache: Closed Loop Control Reference CPU Keep. Alive Apache Open Loop Web Server Controller Max. Clients Reference MEM Apache: Open Loop Control 14 Feedback Control of Computing Systems: M 1 - Introduction Measured MEM §Adapts §Simple system model CPU MEM §Stable §Fast settling © 2004 Hellerstein
Types of Control Reference CPU Keep. Alive Apache Web Server Controller Reference MEM Max. Clients Measured CPU Measured MEM §Manage to a reference value §Ex: Service differentiation, resource management, constrained optimization Regulatory Control Administrative Tasks Reference CPU Keep. Alive Controller Reference MEM Apache Web Server Max. Clients Keep. Alive Controller Max. Clients 15 Apache Web Server Measured CPU Measured MEM §Eliminate effect of a disturbance §Ex: Service level management, resource management, constrained optimization Disturbance Rejection §Achieve the “best” value of outputs §Ex: Minimize Apache response times Optimization Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Properties of Control Systems Stability 16 Accuracy Unstable System Short settling Feedback Control of Computing Systems: M 1 - Introduction Small overshoot © 2004 Hellerstein
Control Theory in Two Slides: System Identification Max. Users Notes Server Actual RIS Model of System Dynamics Transfer Function Predicted RIS 100 80 60 40 20 0 0 17 20 40 60 80 Measured RIS 100 Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Control Theory in Two Slides: Control Design + r* Controller Notes Server Sensor - G(z) N(z) S(z) H(z) = Closed Loop Transfer Function Poles of H(z) Integral Control Law K=. 1 18 K=1 Feedback Control of Computing Systems: M 1 - Introduction K=5 © 2004 Hellerstein
M 1: Labs 19 Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Lab 1: Yawning is Contagious ¢ Description of system v v v ¢ Control objective v ¢ Regulate yawning to a desired frequency while maximizing temperature Questions v v v 20 Room full of people Characteristics Ø People yawn because they need more oxygen Ø Yawning consumes more oxygen than normal breathing Can open windows to reduce yawning, but it’s winter What is an architecture of the system? A block diagram? Discuss control policies What does it mean for this system to be unstable? What would make it unstable? Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Operation of the Yawn System: Open Window open window 21 air Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Operation of the Yawn System: Closed Window closed window 22 air Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Feedback For Yawn System Disturbance input Control Input Reference Input + Controller - What is the ¢ Target System ¢ Controller ¢ Reference input ¢ Control input ¢ Disturbance input ¢ Measured output 23 Target System Measured Output Answers ¢ Yawn response (air in; yawn out) ¢ Who ever sets the window height ¢ Desired yawn rate ¢ Volume of air ¢ Add/remove people, opening door ¢ Actual yawn rate Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Lab 2: Modifications to the Lotus Notes Simulation d(k) e(k) + r* - v(k) Controller + + u(k) Notes Server w(k) Notes Sensor y(k) K=1, r(k)=200, d(k)=10 Control error: e(k)= r*- y(k) I controller: v(k)=v(k-1)+Ke(k) System model: w(k)=(0. 43)w(k-1) +(0. 47)u(k-1) Disturbance input: u(k) = v(k) + d(k) Sensor: y(k)=(0. 8)y(k) +0. 72 w(k)-0. 66 w(k-1) 24 Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
Considerations in Simulating Dynamical Systems ¢ Initial conditions v ¢ Use of offset values versus v v 25 What are the starting values for signals? ARX models typically reflect variations around an operating point. Offset is the original value minus the operating point Feedback Control of Computing Systems: M 1 - Introduction © 2004 Hellerstein
- Slides: 25