yukta: multilayer resource controllers to maximize...

26
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/

Upload: others

Post on 14-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

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/

Page 2: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Resource Management in Computers

Limited resources Many objectives

Configurable parameters

Energy Storage

Frequency Scheduling

Performance Thermals Fairness

Resource Management System

Page 3: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Designing Computer Resource Management Systems

Hardware

OS/Runtime

Application

Different resources, parameters and design teams!

3

Modular Coordinated Handle uncertainty

Page 4: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Contributions of This Work

▪  Propose Robust Control Theory for computer resource management – Describe why robust control theory is essential for computers

▪  Develop Yukta, a modular approach for coordinated multilayer control –  Present how robust control theory is applied to multilayer resource management

▪  Prototype Yukta on an ARM big.LITTLE octacore running Ubuntu –  37% better performance and 20% lower energy than state-of-the-art

4

Page 5: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Why Robust Control Theory is Suitable for Computers? - I

▪  Robust control theory: Branch of control theory for uncertain environments

▪  Designers set a guardband for the amount of uncertainty to tolerate –  60% guardband ⇒ controller’s guarantees hold even if model is off by 60%

▪  Computer control faces many forms of uncertainty –  Partial system view, controller interference, program behavior, limited modeling…

System

Uncertainty Model

5

Robustness to uncertainty enables optimality under modularity

Page 6: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

▪  Robust controllers have input channels for communication

Conventional Controller

Why Robust Control Theory is Suitable for Computers? - II

System (Processor)

Outputs Inputs Robust Controller

_ + Targets

External signals #Tasks (from OS)

6

e.g., frequency e.g., power

We use Externals signals for controller communication

e.g., power target

Page 7: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Why Robust Control Theory is Suitable for Computers? - III

▪  Can work with discretized inputs as common in computers –  E.g., core frequency, 𝑓∈{2  𝐺𝐻𝑧,  2.2  𝐺𝐻𝑧  …3  𝐺𝐻𝑧}

▪  Guarantee precise bounds on meeting targets –  E.g., core power can be kept within ±0.05 W of the power target

7

Robust control theory is highly desirable for computer systems

Page 8: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

e.g., power target

Multilayer system

Robust Controller

Yukta: Multilayer Robust Controllers

Modularly designed and guaranteed optimal behavior

First to propose robust control for modular multilayer management

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

Page 9: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Automated Synthesis of the Robust Controller ▪  Designer provides a model, and: – 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

Page 10: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Automated Synthesis of the Robust Controller ▪  Designer provides a model, and: – 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

Page 11: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Designing Multilayer Controllers

Select inputs, outputs

Decide external signals

Set controller

parameters

Design controller

Modular and practical design

Obtain model

Select inputs, outputs

Decide external signals

Set controllers

parameters

Design controller

Obtain model

Interface

Layer 1, e.g. OS team

Layer 2, e.g. Hardware team

11

Page 12: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Prototype Yukta on a Challenging System

12

Minimize Energy×Delay under thermal and power constraints

Page 13: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Prototyped Yukta Architecture

13

Page 14: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Designing Robust Controllers for the Prototype

14

Select inputs, outputs

Decide External signals

Set controller

parameters

Design controller

Obtain model

Interface

Select inputs, outputs

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

Page 15: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Evaluation

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

Page 16: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Summary ▪  Dynamic resource management must meet many goals simultaneously

▪  Resource controllers should be modular and coordinated

▪  We propose using Robust Control Theory for computer management – Optimized for uncertainty

▪  We develop Yukta for formal multilayer resource management

▪  Prototype demonstrates significant advancement –  50% reduced Energy×Delay on average

▪  Yukta is essential for resource efficient computing

16

Page 17: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Concluding Remarks ▪  More details in the paper – Mathematical background of the Robust Controller

–  Yukta design details

–  Prototype design choices

– Comparison with other designs and heterogeneous workloads

–  Sensitivity analysis

▪  Future work – Heterogeneous components in a layer

– Hierarchical organization of controllers

17

Page 18: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Yukta: Energy×Delay minimization

22

Page 19: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Yukta: Energy×Delay minimization

23

Page 20: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Case Study with blackscholes

24

Page 21: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Yukta: blackscholes

25

Page 22: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Yukta: Comparison with LQG control

26

Page 23: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Yukta: Heterogeneous Workloads

27

Page 24: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Yukta: Sensitivity to Uncertainty Guardbands

28

Page 25: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Yukta: Sensitivity to Output Bounds

29

Page 26: Yukta: Multilayer Resource Controllers to Maximize Efficiencyiacoma.cs.uiuc.edu/iacoma-papers/PRES/present_isca18_2.pdf · Yukta: Multilayer Resource Controllers to Maximize Efficiency

Yukta: Sensitivity to Input Weights

30