feedback control theory
play

Feedback Control Theory a Computer System s Perspective - PowerPoint PPT Presentation

Feedback Control Theory a Computer System s Perspective Introduction Introduction What is feedback control? What is feedback control? Why do computer systems need feedback control? Why do computer systems need feedback


  1. Feedback Control Theory a Computer System ʼ s Perspective Introduction Introduction   What is feedback control? What is feedback control?   Why do computer systems need feedback control? Why do computer systems need feedback control?   Control design methodology Control design methodology   System modeling System modeling   Performance specs/metrics Performance specs/metrics   Controller design Controller design   Summary Summary  

  2. Control Applying input to cause system variables to conform to desired values called Applying input to cause system variables to conform to desired values called   the reference reference. . the   speed=60 mph Cruise-control car: f_engine(t)=? Cruise-control car: f_engine(t)=? speed=60 mph    T_response=5 sec Resource allocation?  E-commerce server: Resource allocation? E-commerce server: T_response=5 sec    Delay = 1 sec Flow rate?  Embedded networks: Flow rate? Embedded networks: Delay = 1 sec   Computer systems: QoS guarantees Computer systems: QoS guarantees  

  3. Open-loop control Compute control input without continuous variable measurement Compute control input without continuous variable measurement   Simple Simple   Need to know EVERYTHING Need to know EVERYTHING ACCURATELY ACCURATELY to work right to work right    Cruise-control car: Cruise-control car: friction(t), ramp_angle(t) friction(t), ramp_angle(t)   E-commerce server: E-commerce server: Workload (request arrival rate? resource Workload (request arrival rate? resource  consumption?); system (service time? fa ilures ?) consumption?); system (service time? fa ilures ?) Open-loop control fails when Open-loop control fails when   We don ʼ We don ʼ t know everything t know everything   We make errors in estimation/modeling We make errors in estimation/modeling   Things change Things change  

  4. Feedback (close-loop) Control Controlled System Controller control manipulated control Actuator input variable function error sample controlled + - Monitor variable reference

  5. Feedback (close-loop) Control Measure variables and use it to compute control input Measure variables and use it to compute control input   More complicated (so we need control theory) More complicated (so we need control theory)   Continuously measure & correct Continuously measure & correct    Cruise-control car: Cruise-control car: measure speed & change engine force measure speed & change engine force   Ecommerce server: Ecommerce server: measure response time & admission control measure response time & admission control   Embedded network: Embedded network: measure collision & change backoff window measure collision & change backoff window  Feedback control theory makes it possible to control well even if Feedback control theory makes it possible to control well even if   We don ʼ We don ʼ t know everything t know everything   We make errors in estimation/modeling We make errors in estimation/modeling   Things change Things change  

  6. Why feedback control? Open, unpredictable environments Deeply embedded networks: interaction with physical environments Deeply embedded networks: interaction with physical environments    Number of working nodes Number of working nodes   Number of interesting events Number of interesting events   Number of hops Number of hops   Connectivity Connectivity   Available bandwidth Available bandwidth   Congested area Congested area  Internet: E-business, on-line stock broker Internet: E-business, on-line stock broker   Unpredictable off-the-shelf hardware Unpredictable off-the-shelf hardware  

  7. Why feedback control? We want QoS guarantees Deeply embedded networks Deeply embedded networks    Update intruder position every 30 sec Update intruder position every 30 sec   Report fire <= 1 min Report fire <= 1 min  E-business server E-business server    Purchase completion time <= 5 sec Purchase completion time <= 5 sec   Throughput >= 1000 transaction/sec Throughput >= 1000 transaction/sec  The problem: provide QoS guarantees in open, unpredictable The problem: provide QoS guarantees in open, unpredictable   environments environments

  8. Advantage of feedback control theory Adaptive resource management heuristics Adaptive resource management heuristics    L Laborious design/tuning/testing iterations aborious design/tuning/testing iterations   N Not enough confidence in face of untested workload ot enough confidence in face of untested workload  Queuing theory Queuing theory    Doesn Doesn ʼ ʼ t handle feedbacks t handle feedbacks   Not good at characterizing transient behavior in overload Not good at characterizing transient behavior in overload  Feedback control theory Feedback control theory    Systematic theoretical approach for analysis and design Systematic theoretical approach for analysis and design   Predict system response and stability to input Predict system response and stability to input 

  9. Outline Introduction Introduction   What is feedback control? What is feedback control?   Why do today ʼ Why do today ʼ s computer systems need feedback control? s computer systems need feedback control?   Control design methodology Control design methodology   System modeling System modeling   Performance specs/metrics Performance specs/metrics   Controller design Controller design   Summary Summary  

  10. Control design methodology Controller Modeling Design Dynamic model Control algorithm analytical Root-Locus system IDs PI Control Satisfy Requirement Performance Specifications Analysis

  11. System Models Linear Linear vs vs. non-linear (differential . non-linear (differential eqns eqns) )   Deterministic vs vs. Stochastic . Stochastic Deterministic   Time-invariant Time-invariant vs vs. Time-varying . Time-varying    Are coefficients functions of time? Are coefficients functions of time?  Continuous-time vs vs. Discrete-time . Discrete-time Continuous-time   System ID vs System ID vs. First Principle . First Principle  

  12. Dynamic Model Computer systems are dynamic dynamic Computer systems are   Current output depends on “ Current output depends on “history history” ”   Characterize relationships among system variables Characterize relationships among system variables   Differential equations (time domain) Differential equations (time domain) • • • • • • a y ( t ) a y ( t ) a y ( t ) b u ( t ) b u ( t ) + + = + 2 1 0 1 0 • Transfer functions (frequency domain) Y ( s ) = G ( s ) U ( s ) b s b c c + 1 0 1 2 G ( s ) = = + 2 a s a s a s p s p + + ! ! 2 1 0 1 2 • Block diagram (pictorial) Y(s) C(s) G(s) R(s) -

  13. Example Utilization control in a video server Periodic task T Periodic task T i i corresponding to each video stream i corresponding to each video stream i   c[i]: processing time, p[i]: period c[i]: processing time, p[i]: period   Stream i Stream i ʼ ʼ s s requested CPU utilization: u[i]=c[i]/p[i] requested CPU utilization: u[i]=c[i]/p[i]   Total CPU utilization: U(t)= : U(t)= Σ Σ {k} u[k], {k} is the set of active streams Total CPU utilization {k} u[k], {k} is the set of active streams   Completion rate Completion rate: : R R c c (t)= ( (t)= ( Σ Σ { } u[m])/ u[m])/ Δ Δ t t, where {m} is the set of terminated video , where {m} is the set of terminated video   {kc kc} streams during [t, t+ streams during [t, t+ Δ Δ t t] ] Unknown Unknown   Admission rate: R : R a (t)= ( Σ Σ {ka} u[j])/ Δ t, where {j} is the set of admitted streams during [t, , where {j} is the set of admitted streams during [t, Admission rate a (t)= ( {ka} u[j])/ Δ t   t+ t+ Δ Δ t t] ] Problem: design an admission controller to guarantee U(t)= Problem: design an admission controller to guarantee U(t)=U U s s regardless of regardless of R R c c (t) (t)  

  14. Model Differential equation • Error: E(t)=U s -U(t) t ! • Model (differential equation): U ( t ) ( R ( ) R ( )) d = # " # # a c 0 # = • Controller C? E(t) ⇒ R a (t) R a (t) - U s C? U(t) CPU R c (t)

  15. A Diversion to Math System representations Three ways of system modeling Three ways of system modeling   • Time domain: convolution; differential equations. t ! u(t) y ( t ) g ( t ) * u ( t ) g ( t ) u ( ) d g(t) y(t) = = " # # # 0 • s (frequency) domain: multiplication Y ( s ) G ( s ) U ( s ) U(s) Y(s) G(s) = • Block diagram: pictorial s-domain is a simple & powerful “language” for control analysis

Recommend


More recommend