Yukta: Multilayer Resource Controllers to Maximize Efficiency
Raghavendra Pradyumna Pothukuchi Sweta Yamini Pothukuchi Petros Voulgaris Josep Torrellas
International Symposium on Computer Architecture (ISCA) 2018
http://iacoma.cs.uiuc.edu/
Yukta : Multilayer Resource Controllers to Maximize Efficiency - - PowerPoint PPT Presentation
Yukta : Multilayer Resource Controllers to Maximize Efficiency Raghavendra Pradyumna Pothukuchi Sweta Yamini Pothukuchi Petros Voulgaris Josep Torrellas http://iacoma.cs.uiuc.edu/ International Symposium on Computer Architecture (ISCA) 2018
International Symposium on Computer Architecture (ISCA) 2018
http://iacoma.cs.uiuc.edu/
Energy Storage Frequency Scheduling Performance Thermals Fairness
Hardware OS/Runtime Application
3
Modular Coordinated Handle uncertainty
– Describe why robust control theory is essential for computers
– Present how robust control theory is applied to multilayer resource management
– 37% better performance and 20% lower energy than state-of-the-art
4
– 60% guardband ⇒ controller’s guarantees hold even if model is off by 60%
– Partial system view, controller interference, program behavior, limited modeling… System Uncertainty Model
5
Conventional Controller
System (Processor) Outputs Inputs Robust Controller
Targets External signals #Tasks (from OS)
6
e.g., frequency e.g., power
e.g., power target
– E.g., core frequency, 𝑔∈{2 ¡𝐻𝐼𝑨, ¡2.2 ¡𝐻𝐼𝑨 ¡…3 ¡𝐻𝐼𝑨}
– E.g., core power can be kept within ±0.05 W of the power target
7
e.g., power target Multilayer system Robust Controller
8
Layer 1 (Processor) Outputs Inputs
Targets External signals
#Tasks (from OS)
e.g., frequency e.g., power Robust Controller Layer 2 (OS) Outputs Inputs
Targets Optimizer Optimizer
Design goals
min E×D min E×D
– Output deviation bounds (𝐶) : e.g, ±0.05W for power deviations – Input weights (𝑋) : Relative overheads – Discrete input values (Δ↓in ) – Uncertainty guardbands (Δ↓𝑣 ) : Degree of desired robustness
Model Observed Outputs Inputs Robust Controller
Targets 𝚬↓𝒋𝒐 𝒐 𝚬↓𝒗 ↓𝒗 𝑪 𝑿 Deviations
9
Nominal loop System
– Output deviation bounds (𝐶) : e.g, ±0.05W for power deviations – Input weights (𝑋) : Relative overheads – Discrete input values (Δ↓in ) – Uncertainty guardbands (Δ↓𝑣 ) : Degree of desired robustness
Nominal loop 𝑶 𝚬 Targets Observed Outputs
Structured Singular Value 𝑻𝑻𝑾
𝑻𝑻𝑾(𝑶,𝚬)
Can the controller guarantee the bounds optimally even under uncertainty as big as the guardband? Synthesis is automated!
10
Select inputs,
Decide external signals Set controller parameters Design controller Modular and practical design Obtain model Select inputs,
Decide external signals Set controllers parameters Design controller Obtain model Interface Layer 1, e.g. OS team Layer 2, e.g. Hardware team
11
12
Minimize Energy×Delay under thermal and power constraints
13
14
Select inputs,
Decide External signals Set controller parameters Design controller Obtain model Interface Select inputs,
OS Robust Controller HW Robust Controller
Decide External signals Interface Obtain model Data driven modeling (System Identification): 2 benchmarks each from SPECint, SPECfp and PARSEC Set controller parameters § Output deviation bounds § Input weights § Input discretization § Uncertainty guardband Design controller
Coordinated heuristics Yukta: Multilayer robust Monolithic non-robust
Average across 8 PARSEC and 6 SPEC (multiprogrammed) workloads
15
[ISCA’16] Industry based
Yukta makes the system 37% faster with 20% lower energy ⇒ 50% better ED
– Optimized for uncertainty
– 50% reduced Energy×Delay on average
16
– Mathematical background of the Robust Controller – Yukta design details – Prototype design choices – Comparison with other designs and heterogeneous workloads – Sensitivity analysis
– Heterogeneous components in a layer – Hierarchical organization of controllers
17
22
23
24
25
26
27
28
29
30