Presentation on theme: "Feedback Control Real-Time Scheduling: Framework, Modeling, and Algorithms Chenyang Lu, John A. Stankovic, Gang Tao, Sang H. Son Presented by Josh Carl."— Presentation transcript:
Feedback Control Real-Time Scheduling: Framework, Modeling, and Algorithms Chenyang Lu, John A. Stankovic, Gang Tao, Sang H. Son Presented by Josh Carl
Overview Motivation and Introduction Architecture Performance Specification and Metrics Control Theory Based Design Methodology Modeling the Controlled Real-Time System Design of FCS Algorithms Experiments
Motivation and Intro Static vs. Dynamic Scheduling – Knowledge of task set and time constraints – Example: Rate Monotonic (RM) Dynamic: Resource Sufficient/insufficient – Example: Earliest Deadline First (EDF), Admission- Control-based RM, EDF are Open Loop – Good in predictable environments with accurate models – Bad in unpredictable environments
Soft Real-Time Systems New soft real-time applications – Open and unpredictable environments – Examples: Online trading, e-commerce, agile manufacturing – Resource requirements and arrival rates not known, but the system still has performance guarantees. – EDF and RM fail miserably in these applications
Enter Feedback Control RT Scheduling Feedback Control Systems Scheduling Framework – Architecture – Performance specifications – Design methodology – In contrast to ad hoc approaches that rely on laborious design/tuning/testing iterations, FCS enables system designers to systematically design adaptive real-time systems with established analytical methods to achieve desired performance guarantees in unpredictable environments.
Task Model QoS Levels: – Each QoS level j (0 j N-1), higher QoS=more CPU and more Value – D i [j]: the relative deadline – EE i [j]: the estimated execution time – AE i [j]: the (actual) execution time – V i [j]: the value task T i contributes if it is completed at QoS level j before its deadline D i [j]. For periodic tasks: – P i [j]: the invocation period – B i [j]: the estimated CPU utilization B i [j] = EE i [j] / P i [j] – A i [j]: the (actual) CPU utilization A i [j] = AE i [j] / P i [j] For aperiodic tasks: – EI i [j]: the estimated inter-arrival-time between subsequent invocations – AI i [j]: the average inter-arrival-time that is unknown to the scheduler – B i [j]: the estimated CPU utilization B i [j] = EE i [j]/Ei i [j] – A i [j]: the (actual) CPU utilization A i [j] = AE i [j] / AI i [j] A key feature of our task model is that it characterizes systems in unpredictable environments where tasks actual CPU utilization is time varying and unknown to the scheduler.
Control Variables Controlled Variables – Performance metrics controlled by the scheduler. – Defined over window ( (k-1)W, kW), W=sampling period, k=sampling instant – Miss Ratio, M(k)=deadline misses/completed & aborted tasks – Utilization, U(k)=% of CPU busy time in window – Value, V(k) Performance References: M s and U s Manipulated Variables: What can be changed by the scheduler – Total estimated utilization B(k)=Σ i U i [l i (k)], l i =QoS level U(k) and B(k) are different values (actual vs. estimated), and U(k) bounded to 100%, B(k) is not.
Control Loop Monitor: Measures controlled variables (M(k) and/or U(k)) and sends data to the controller. Controller: Compares actual data to estimated data and changes control input accordingly (D B (k)). QoS Actuator: Changes total estimated requested utilization at each sampling instant k according to the control input by adjusting QoS levels. Basic Scheduler: EDF or Rate/Deadline Monotonic.
Performance Regular metrics (average miss ratio and average utilization) dont work. Stability: Miss ratio M(k) and utilization U(k) are always bounded for bounded references – dont want to stay at 100%. Transient-state response: – Overshoot: M o =(M max -M S )/M S, U o =(U max -U S )/U S – Settling Time = T S Steady-state Error = E SM or E SU = Difference between average values in steady state and its corresponding reference. Sensitivity = S P = Robustness of the system with regard to workload or system variations. Loads: Step-load, Ramp Load
Design Methodology A system designer can systematically design an adaptive resource scheduler to satisfy the systems performance specifications with established analytical methods in control theory. 1. Specify the desired dynamic behavior with transient and steady state performance metrics. 2. Establish a dynamic model of the real-time system for the purpose of performance control. 3. Based on 1 and 2 apply established mathematical techniques of feedback control theory to design FCS algorithms that analytically guarantee the specified behavior.
Modeling Utilization Misses G A =worst case utilization ratio, G M =worst case miss ratio, D B =change in total estimated requested utilization, A(k)=total (actual) requested utilization, A th (k)=Utilization Threshold Property 1: At any instant of time, at least one of the controlled variables (U(k) and M(k)) does not saturate in a real-time system.
Design (abbreviated) At each sampling instant k, the Controller computes a control input D B (k), the change in total estimated requested utilization based on an error ratio. Error ratios (E(k)): – E M (k)=M s -M(k) – E U (k)=U s -U(k) Control Input: D B (k)=K P E(k), K P =tunable parameter. Controller Goal: (1) guaranteed stability, (2) zero steady state error, (3) zero sensitivity to workload variations, and (4) satisfactory settling time and overshoot.
Derivations and z-transforms later… In summary, given the system parameters, the worst-case utilization ratio G A, and the miss ratio factor G M, we can directly derive the control parameter K P …to guarantee a set of performance profiles including stability, zero steady state error, and a satisfactory range of transient performance.
Three Algorithms FC-U: Feedback Utilization Control – Periodically samples the utilization, computes a change in total estimated utilization, assigns new QoS levels. – FC-U guarantees that the miss ratio M(k)=0 in steady state if its reference U s A th. – Achieves excellent performance (M(k)=0) in steady state if utilization reference is correct. FC-M: Feedback Miss Ratio Control – Utilizes a miss ratio control loop to directly control miss ratio. – Does not depend on any knowledge about the utilization bound. – It can always achieve low miss ratio, therefore is more robust in the face of utilization threshold variations. FC-UM: Integrated Utilization/Miss Ratio Control – Best of both worlds but more complicated. – Uses the most conservative of the control inputs.
Experiments On a simulator called FECSIM. Two task sets: Some built in randomness in the tasks. Tasks have 3 QoS levels. QoS Actuator: Highest-Value-Density-First Sampling window is 0.5 sec.
Profiling Run simulator in open-loop.
Performance Reference Settings and Experiment A System Settings Experiment A: Arrival Overload – SL(0,150%) – G a =2 (execution time factor) – average execution time is twice the estimation.
Experiment A: FC-U Results
Experiment A: FC-M
Experiment A: FC-UM
Experiment A: Open Loop
Experiment B: Arrival/Internal Overload Same as experiment A, plus the average execution times vary every 100 seconds. First and second change: 57.5% increase for every task. Last change: 75% decrease for every task. Underload situation. Shortened settling time by manually setting B(0)=80% (estimated requested utilization).
Experiment B: FC-UM
Experiment B: Open Loop
Conclusions FCS algorithms can provide: – Stability with arrival overload and internal overload. – System miss ratio and utilization stay close to the corresponding performance reference. – Satisfactory settling time and low overshoot in transient state.