Download presentation
Presentation is loading. Please wait.
Published byKelly Patterson Modified over 9 years ago
1
Department of Computer Science A Case for Coordinating Accuracy-aware Applications with Power-aware Systems Henry Hoffmann hankhoffmann@cs.uchicago.edu
2
Balancing Goals With Programmability 2 PerformanceProgrammability
3
Balancing Goals With Programmability 3 Performance Programmability Power LoHi Power
4
Balancing Goals With Programmability 4 Performance Programmability Power Accuracy LoHi Power
5
Partial Solutions 5 Performance AccuracyPower 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) Each is provably optimal individually. What happens when they interact? What guarantees can we provide? 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 6
7
Why Does Bad Behavior Arise? 7 Power (W) Accuracy Loss (%) Configuration x264 Video Encoder Power Accuracy Loss Accuracy-aware application prefers perfect accuracy, at high power Power-aware system prefers saving power, at high accuracy loss
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 8
9
Why Run Both? 9 Combining accuracy- and power-awareness leads to: 1)Better energy efficiency for same accuracy or 2)Better accuracy for same energy efficiency Combining accuracy- and power-awareness leads to: 1)Better energy efficiency for same accuracy or 2)Better accuracy for same energy efficiency
10
How Can We Solve This Problem? [ECRTS 2014] Split into multiple dimensions: lead and subordinate Control lead Dynamically construct controller for subordinate Subordinate controller approximates linearity 10 Power Controller Power Controller Power Translator Power Translator Application & System Application & System - - Performance Controller Performance Controller Performance Translator Performance Translator - - g p (t) g s (t) e p (t) e s (t) u p (t) u s( (t) k s (t) k p (t) f s (t) f p (t)
11
Avoids Bad Behavior 11
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 12
13
Reacting to Changing Goals 13 Real-time, Low-powerReal-time, High Accuracy
14
Support Goals and Goal Changes in Any Two of Three Dimensions 14
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 15 ObserveAct Decide
16
Questions? 16 ObserveAct Decide
17
Backup 17
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 18
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 19
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) 20
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 21
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.