1 / 34

Feedback performance control in software services

Feedback performance control in software services. T.F. Abdelzaher, J.A. Stankovic, C. Lu, R. Zhang, and Y. Lu, Feedback Performance Control in Software Services, IEEE Control Systems, 23(3): 74-90, June 2003. Overview. SW systems become larger and bigger

Download Presentation

Feedback performance control in software services

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Feedback performance control in software services T.F. Abdelzaher, J.A. Stankovic, C. Lu, R. Zhang, and Y. Lu, Feedback Performance Control in Software Services, IEEE Control Systems, 23(3): 74-90, June 2003.

  2. Overview • SW systems become larger and bigger • Performance guarantee required, e.g., in web-based e-commerce • Control theory • Promising theoretical foundation for perf control in complex SW applications, e.g., real-time scheduling, web servers, multimedia control, storage mangers, power management, routing in computer networks, …

  3. Overview • Software performance assurance problems -> Feedback control problems focused on web server performance guarantee problems

  4. SW performance control • Less rigorous guarantees on perf and quality • Most SW eng. research deals with the development of functionally correct SW • Functional correctness is not enough! • Timeliness in embedded systems • Correct but delayed action can be disastrous • Non-fucntional QoS attributes, e.g., timeliness, security, availability, …

  5. Traditional approaches for perf guarantees • Worst case estimates of load & resource availability • Recall EDF, RM, DM, Priority Ceiling Protocol, …

  6. New demand for performance assurance • QoS guarantees required in a broader scope of applications run in open, unpredictable environments • Global communication networks enabling online banking, trading, distance learning, … • Points of massive aggregation suffering unpredictable loads, potential bottlenecks, DoS attacks, … -> Precise workload/system model unknown a priori • Failure to meet QoS requirements -> loss of customers or financial damages • Worst case analysis/overdeisgn could be overly pessimistic or wasteful • Solid analytic framework for cost-effective perf assurance required

  7. Challenges • How to model SW architecture? • How to map a specific QoS problem into a feedback control system? • How to choose proper SW sensors and actuators to monitor and adjust perf and workloads/resource allocation? • How to design controllers for servers? -> This paper focuses on web servers

  8. QoS metrics • Delay metrics • Proportional to time: queuing delays, execution latencies, service response time • Rate metrics • Inversely proportional to time • Connection bandwidth, throughput, packet rate

  9. Time-related perf attributes • Can be controlled by adjusting resource allocation • Queuing theory can predict perf given a particular resource allocation or vice versa • Queuing theory only works for Poisson arrival patterns • Queuing theory can only predict average perf even if this assumption holds • Arrival patterns in web applications follow heavy-tailed distribution -> Bursty arrival patterns

  10. Service architecture Liquid task model Fig. 1 Server architecture: (a) computing model (b) control-oriented representation

  11. Liquid task model • Ci << Di • Takes Ci units of time to serve request i • Di is the max tolerable response time • Tolerable response time is finite • Service times are infinitesimal • Progress of requests through the server queues ≈ Fluid flow • Service rate at stage k = dNk(t)/dt where Nk is #requests processed by stage k

  12. Liquid task model • Volume at time T≈ #requests queued at stage k = ∫T(Fin – Fk) • Fk: service rate at stage k • Fin: request arrival rate to this stage • Valves: points of control, i.e., manipulated variables such as the queue length • Liquid model does not describe how individual requests are prioritized • Control theory can be combined with queuing theory or real-time scheduling

  13. Server modeling • Difference equation to model web servers • y(k): perf, e.g., delay or throughput, measured at the kth sampling period • U(k): control input at the kth sampling period • ARMA (AutoreRressive Moving Average) model • y(k) = a1y(k-1) + a2y(k-2) + … + any(k-n) + b1u(k-1) + b2u(k-2) + … + bnu(k-n) • Transfer function can be derived • Web proxy cache model [4] • TCP dynamics [5]

  14. Resource allocation for QoS guarantees • Allocate more/less resource = open/close a valve • Need actuators to control resource allocation or QoS provided by the system

  15. SW system actuators • Input flow actuators • Admission control • Control queue length, server utilization, … • Reject some requests under overload

  16. SW system actuators • Quality adaptation actuators • Change processing requirements to increase server rate under overload • E.g., Return abbreviated web page under overload • Tradeoff btwn delay & quality • Service level m in a range [0, M] where 0 is rejection

  17. Resource reallocation actuator • Alter the amount of allocated resources • Usually applicable to multiple classes of clients, e.g., dynamically reallocate disk space to support the service delay ratio 1:2 between two service classes [4,7]

  18. QoS Mapping • Convert common resource management & SW perf assurance problems to FC problems • Absolute convergence guarantee • Relative guarantee • Resource reservation guarantee • Prioritization guarantee • Statistical multiplexing guarantee • Utility optimization guarantee

  19. Absolute convergence guarantee • Convergence to the specified problem • Overshoot: Maximum deviation • Settling time: Time taken to recover the desired perf

  20. Absolute convergence guarantee • Rate & queue length control • Result in linear FC • (Flow) rate can be directly controlled by actuators • Queue length can be linearly controlled by controlling the flow • E.g., server utilization control loop

  21. Absolute convergence guarantee • Delay control • More difficult • Delay is inversely proportional to flow • Queuing delay d = Q/r where Q is queue length & r is service rate • Nonlinear

  22. Relative guarantee • For example, fix the delays of two traffic classes at a ratio 3:1 • Hi: measured perf of class i • Ci: weight of class i • Relative guarantee specifies H1:H2 = 1:3 • Set point = 1/3 • Error e = 1/3 – H1/H2

  23. Relative guarantee in Apache web server • Controlled variable: relative delay ratio • Manipulated variable: #allocated processes per class to control connection delay • HTTP protocol summary • A client, e.g., web browser establishes a TCP connection with a server process • The client submits an HTTP request to the sever over the TCP connection • The server sends the response back to the client • Keep open the TCP connection for the Keep Alive interval, e.g., 15s -> Claim connection delay dominates service response time -> Scheduling can also significantly relative delay ratio, but it is not considered

  24. Relative guarantee in Apache web server • System identification based on the ARMA model • Randomly change per class process allocations • Measure response time

  25. Relative guarantee in Apache web server • Perf settings • 4 Linux machines run the Surge web workload generator • 1 Linux machine runs the Apache web server • Suddenly increase #premium clients by 100 at time 870s

  26. Relative guarantee in Apache web server • Perf results Open Loop Stable? Closed Loop

  27. Related work • ControlWare • CPU scheduling • Storage management • Network routers • Power/heat management • RTDB

  28. Conclusions • Feedback control is applicable to managing performance in SW systems • Future work • Adaptive/robust control • Predictive control • Apply to other computational systems such as embedded systems

  29. Adptive Control: Self-Tuning Regulator • Dynamically estimate a model of the system via the Recursive Least Square method • Controller will accordingly set the actuators to support the desired perf.

  30. References (HP Storage Systems Lab) • Designing controllable computer systems, Christos Karamanolis, Magnus Karlsson and Xiaoyun Zhu. USENIX Workshop on Hot Topics in Operating Systems (HotOS), June 2005, pp. 49-54, Santa Fe, NM. • Dynamic black-box performance model estimation for self-tuning regulators, Magnus Karlsson and Michele Covell. International Conference on Autonomic Computing (ICAC), pp. 172-182, June 2005, Seattle, WA.

  31. IBM Autonomic Computing Lab • http://www.research.ibm.com/autonomic/index.html • General, broader research issues regarding self-tuning, self-managing systems • Also, visit Joe Hellerstein’s Adaptive Systems Department

  32. Some University Labs • Tarek Abdelzaher: http://www.cs.uiuc.edu/homes/zaher/ • Chenyang Lu: http://www.cse.wustl.edu/~lu/

  33. Announcement • Programming Assignment 1 is posted on the course web page

  34. Questions?

More Related