Energy-Constrained Dynamic Resource Allocation in a Heterogeneous
Transcript of Energy-Constrained Dynamic Resource Allocation in a Heterogeneous
![Page 1: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/1.jpg)
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
Longmont, Colorado, USA
09/12/11
![Page 2: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/2.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/3.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/4.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/5.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/6.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/7.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/8.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/9.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/10.jpg)
10
Heuristics: Random
● randomly assign task● used for comparison
![Page 11: Energy-Constrained Dynamic Resource Allocation in a Heterogeneous](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/11.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/12.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/13.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/14.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/15.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/16.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/17.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/18.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/19.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/20.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/21.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/22.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/23.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/24.jpg)
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](https://reader036.fdocuments.us/reader036/viewer/2022071602/613d5774736caf36b75c2fdd/html5/thumbnails/25.jpg)
25
Questions?