Top Banner
1 Energy-Constrained Dynamic Resource Allocation in a Heterogeneous Computing Environment B. Dalton Young 1 , Jonathan Apodaca 2 , Luis Diego Briceno 1 , Jay Smith 1,3 , Sudeep Pasricha 1,2 , Anthony A. Maciejewski 1 , Howard Jay Siegel 1,2 , Bhavesh Khemka 1 , Shirish Bahirat 1 , Adrian Ramirez 1 , and Yong Zou 1 Department of Electrical and Computer Engineering 1 Department of Computer Science 2 Colorado State University Fort Collins, Colorado, USA [email protected] DigitalGlobe 3 Longmont, Colorado, USA 09/12/11
25

Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

Sep 12, 2021

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

11

Energy-Constrained Dynamic Resource Allocation in a Heterogeneous Computing Environment

B. Dalton Young1, Jonathan Apodaca2, Luis Diego Briceno1,Jay Smith1,3, Sudeep Pasricha1,2, Anthony A. Maciejewski1,Howard Jay Siegel1,2, Bhavesh Khemka1, Shirish Bahirat1,

Adrian Ramirez1, and Yong Zou1

Department of Electrical and Computer Engineering1

Department of Computer Science2

Colorado State UniversityFort Collins, Colorado, USA

[email protected]

Longmont, Colorado, USA

09/12/11

Page 2: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

2

Problem

● dynamic resource allocation● independent tasks with individual deadlines● goal: complete as many tasks as

possible by their individual deadlines● constraint: total energy consumption● simulation study

Page 3: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

3

Contributions

● develop model of robustness for our environment● adapt two existing heuristics● create a novel heuristic● demonstrate utility of generalized filter mechanisms

Page 4: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

4

System Model● multi-core heterogeneous system

▲ performance varies between processors● dynamic, immediate-mode scheduler

▲ each task scheduled when it arrives● P-states from ACPI standard model

power/performance tradeoff● system scheduler controls P-state transitions● a task cannot be stopped once started

Page 5: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

5

Workload

● collection of known task types● task type execution time represented

by a probability mass function (pmf)▲ found from historical data, experiments,

etc. (Li et al., JPDC 1997)● pmf is scaled to represent execution

time in different P-states● a per-core average power consumption

is used for each P-state● power consumption values generated based on

work by Lee and Zomaya (IEEE TPDS 2011)▲ similar to AMD datasheet thermal design power values

Page 6: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

6

Arrival Rate

● bursty arrival rate● task arrivals modeled as Poisson process● perfectly subscribed: A reasonable heuristic will finish all

tasks on time under the energy constraint with no slack time and no energy remaining.

▲ oversubscribed: tasks arrive at a faster rate ( ) ▲ undersubscribed: tasks arrive at a slower rate ( )

● slightly undersubscribed on average● arrival rate structure impacts result

λ fastλslow

Page 7: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

7

Robustness Questions

● three robustness questions:▲ 1. What makes the system robust?

● completes tasks by their deadlines▲ 2. What uncertainties are the system robust against?

● uncertainty in execution time▲ 3. How is robustness quantified?

● expected value of on-time completions

Page 8: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

8

Calculating Robustness

● expected value of on-time completions▲ from work by Smith et al. (PDPTA 2010)

● when a task arrives, change in robustness is at most 1.0

Page 9: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

9

Heuristics

● used to assign each task when it arrives▲ optimize number of tasks completed under

constraint on the total energy consumed● assignment: mapping of task to a node,

multi-core processor, core, and P-state● can use filters to add energy- and robustness-awareness● may leave tasks unassigned

Page 10: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

10

Heuristics: Random

● randomly assign task● used for comparison

Page 11: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

11

Heuristics: Shortest Queue

● minimize number of tasks assigned to each core● tiebreaker: expected execution time

Page 12: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

12

Heuristics: Minimum Expected Completion Time

● minimize task's expected completion time● completion time: sum of expected task

execution times and current time

Page 13: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

13

Heuristics: Lightest Load

● attempt to balance energy and robustness by minimizing a “load”

● : expected energy consumed● : change in robustness

L=(1.0−ΔR)×Enex

EnexΔR

L

Page 14: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

14

Energy Filter

● filter tracks estimated energy remaining● restrict potential assignments using energy threshold● : estimated energy remaining● : tasks remaining in the workload● : multiplier from average queue depth

Enthresh=Enmul∗Enrem /T rem

EnremT rem

Enthresh

Enmul

Page 15: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

15

Robustness Filter

● restrict potential assignments using a robustness change threshold

ΔR thresh=0.50

ΔR thresh

Page 16: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

16

Simulations

● 50 trials, 1000 tasks each trial, 100 task types● task type pmfs generated using Coefficient of

Variation Based method (Ali et al., TJSE 2000)● energy constraint: product of average task execution

time, average power, and number of tasks● variations between simulation trials:

▲ task-type mix▲ task arrival times▲ task execution times▲ task deadlines

Page 17: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

17

Results: Random

● robustness filter more useful than energy● combined filtering best (~60 additional completions)

Page 18: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

18

Results: Shortest Queue

● robustness filtering useful with energy filtering● energy filtering ~100 completions better than no filtering

Page 19: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

19

Results: Minimum Expected Completion Time

● robustness filtering useful with energy filtering● energy filtering ~100 completions better than no filtering

Page 20: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

20

Results: Lightest Load

● robustness filtering useful even though load has robustness● energy filtering ~90 completions better than no filtering

Page 21: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

21

Results: Best Comparison

● all best results use energy and robustness filtering● random median within 4% of best value

Page 22: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

22

Conclusions

● filtering mechanisms more important than heuristic● important to take energy into account● robustness model useful in conjunction

with an energy-aware filter

Page 23: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

23

Future Work: Power

● try more power-saving mechanisms ▲ could include ACPI G-states▲ could include turning machines off

● use power distributions instead of averages● consider non-CPU power (memory, disks, etc)

Page 24: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

24

Future Work: System Model and Simulations

● task cancellation to mitigate bad assignments● tasks with priorities● different arrival rates and structures● stop tasks as soon as deadline missed

Page 25: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous

25

Questions?