1 / 21

A Case for Coordinating Accuracy-aware Applications with Power-aware Systems

A Case for Coordinating Accuracy-aware Applications with Power-aware Systems. Henry Hoffmann hankhoffmann@cs.uchicago.edu. Balancing Goals With Programmability. Performance. Programmability. Lo. Hi. Power. Balancing Goals With Programmability. Power. Programmability. Performance. Lo.

wright
Download Presentation

A Case for Coordinating Accuracy-aware Applications with Power-aware Systems

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. A Case for Coordinating Accuracy-aware Applications with Power-aware Systems Henry Hoffmann hankhoffmann@cs.uchicago.edu

  2. Balancing Goals With Programmability Performance Programmability

  3. Lo Hi Power Balancing Goals With Programmability Power Programmability Performance

  4. Lo Hi Power Balancing Goals With Programmability Accuracy Programmability Power Performance

  5. Partial Solutions Accuracy-aware Applications (e.g. DynamicKnobs, Quality-of-Service Profiling, EnerJ, Petabricks, Eon, Green) Power-aware Systems (e.g. Maybe too many to list PTRADE, METE, ControlWare, Agilos, Swift) Performance Performance Accuracy Power Each is provably optimal individually. What happens when they interact? What guarantees can we provide?

  6. Why Coordinate the Two? • Avoid bad behavior • Provide better outcomes than accuracy adaptation alone • Add new capability to react to environmental changes

  7. Why Does Bad Behavior Arise? x264 Video Encoder Power (W) Accuracy Loss (%) Configuration Power Accuracy Loss Power-aware system prefers saving power, at high accuracy loss Accuracy-aware application prefers perfect accuracy, at high power

  8. Example Of Bad Behavior • Run x264 (video encoder) on real Linux x86 system with • Problem is performance becomes a non-linear (and non-convex) function of application and system

  9. Why Run Both? Combining accuracy- and power-awareness leads to: Better energy efficiency for same accuracy or Better accuracy for same energy efficiency

  10. How Can We Solve This Problem?[ECRTS 2014] Power Controller Power Translator gp(t) up(t) kp(t) ep(t) Application & System - • Split into multiple dimensions: lead and subordinate • Control lead • Dynamically construct controller for subordinate • Subordinate controller approximates linearity Performance Controller Performance Translator gs(t) es(t) us((t) - ks(t) fs(t) fp(t)

  11. Avoids Bad Behavior

  12. Reacts to Application Resource Needs • Video with three distinct scenes • Coordination reacts to phases while: • Maintaining real-time performance • Reducing power consumption • Providing higher accuracy

  13. Reacting to Changing Goals Real-time, Low-power Real-time, High Accuracy

  14. Support Goals and Goal Changes in Any Two of Three Dimensions

  15. Conclusions • Coordination of adaptive applications and systems is necessary • Possible with cascading control systems • Cascading control: • Avoids bad behavior • Provides better outcomes • Provides greater responsiveness to fluctuations in workload and changes in goals Observe Act Decide

  16. Questions? Observe Act Decide

  17. Backup

  18. Selecting the lead dimension • The lead dimension becomes the one with fewer “knobs” (options) • The subordinate dimension has more options • Intuition: • After controlling lead, there will still be knobs affecting subordinate

  19. Controlling the Lead Dimension • 5-7 compute a control action • 8-19 ensure that: • Goal met in lead dimension • Affects on subordinate dimension are optimal • Intuition: • Anything we do in the lead should have smallest affect on subordinate

  20. Constructing a Subordinate Controller • Approximate affect of lead dimension on subordinate (20) • Construct controller based on this approximation (21) • Intuition: • Approximate non-linear interaction by constructing tangent to true curve • Converges to true behavior (analogous to derivative in calculus)

  21. Controlling the Subordinate Dimension • 22-33 ensure control for subordinate does not affect lead • Also, control should be optimal in any remaining dimensions • Intuition: • Use subordinate actions that do not affect lead

More Related