Title: Power Management Algorithms
1Power Management Algorithms
- An effort to minimize Processor Temperature and
Energy Consumption
2Motivation
- Microprocessor power consumption is increasing
exponentially
3Motivation
- Battery capacity is increasing linearly
- Expected battery life increase in the next 5
years 30 to 40 - Chip manufacturers are close to thermal wall
- Increase in speed ? increase in heat generation
- Expensive and noisy cooling systems required
- Intel Tejas and Jayhawk
- www.cs.pitt.edu/kirk/cool.avi
- Laptops may damage male fertility due to
increased temperature (Reuters December 9, 2004)
4Motivation
- Information Technology (IT) consumes about 8 of
energy in US - Exponential growth ? 50 of energy consumption
- Analysis from Intel 25,000-square-foot
- server farm with approximately
- 8,000 servers consumes
- 2 megawatts
- -- 25 of the cost of such a
- facility
5Processor Technologies for Power Management
- Speed Scaling
- Processor can operate on multiple speeds
- Intels SpeedStep 2 speeds
- AMDs PowerNow 9 speeds
- Intels Foxton technology 64 speeds
- Power Down
- Processor can operate on multiple power levels
- Can operate on any power level L0, L1, , Ln.
- Ln is normal state. L0, , Ln-1 are idle states
- It costs to bring back processor to Ln
6Relationship Between Speed and Energy
- P c V2 s
- Minimum voltage V required to run processor at
speed s. V is roughly linear to s - Therefore, P c s3
- Generalize to P sp, for some constant p 1
- Energy ?Time P dt
- Speed goes up(down) ? Energy consumption goes up
(down) -
7Relationship Between Speed and Temperature
- Key Assumption fixed ambient temperature Ta
- First order approximation of temperature
- dT/dt a P b (T Ta) a P b T
- T Temprature
- t time
- P supplied power
- a,b some constants
- For simplicity rescale so that Ta 0
8Problem Formulation
- Input A collection of tasks, where task I has
- Release time ri when it arrives in the system
- Deadline di when it must finish by
- Work requirement wi (number of cycles)
- The processor must perform wi units of work
between time ri and time di - Preemption is allowed
- Objectives
- Minimize energy consumption
- Minimize maximum temperature
- For each time, the scheduler must specify both
- Job Selection which job to run
- may assume Earliest Deadline First policy
- Speed Setting at what speed the processor should
run at -
9Summary of Results
10Offline YDS Algorithm (1995)
- Repeat
- Find the time interval I with maximum intensity
- Intensity of time interval I S wi / I
- Where the sum is over tasks i with ri,di in I
- During I
- speed to the intensity of I
- Earliest Deadline First policy
- Remove I and the jobs completed in I
11YDS Example
Release time
deadline
time
12YDS Example
First Interval
Intensity
Second Interval Intensity green work blue work
Length of solid green line
13YDS Example
- Final YDS schedule
- Height processor speed
- YDS theorem The YDS schedule is optimal for
energy, or equivalently for temperature when b
0. And YDS is optimal for maximum power, or
equivalently when b 8. - Bansal, Pruhs Consequence of KKT optimality
- Bansal, Pruhs The YDS is at worst 20-competitive
with respect to temperature for all cooling
parameters b -
14Why is YDS optimal?
- Convex program
- They are called KKT optimality conditions
The problem has solution if these conditions hold
15Why is YDS optimal?
- YDS as convex problem
- Break time into intervals t0,tm at release times
and deadlines - J(i) tasks feasibly executed in Ii ti,ti1
- Wi,j for j in J(i) work done on j during
ti,ti1
KKT optimality conditions hold
It took 10 years to prove YDSs optimality!!!
16Online AVR Algorithm (1995)
- Each job i has av. rate requirement or density
- avri wi/(di ri)
- while(t lt max dj)
- s(t) Savrj(t)
- Apply Earliest deadline First policy
- Yao, Demers, Schenker 4 AVR ratio 8 with
respect to energy - Bansal, Pruhs AVR is not O(1)-competitive with
respect to temperature
AVR(t)
17Online OA Algorithm (1995)
- After each arrival
- Recompute an optimal schedule (YDS alg.)
consisting of - Newly arrived job j
- Remaining portions of other jobs
- Bansal, Pruhs OA is not O(1)-competitive with
respect to temperature
18BKP Algorithm (2004)
- Algorithm description
- Speed k(t) at time t
- e maximum over all t2 gt t of
- Swi/(t2 - t1)
- Sum is over jobs i with t1 et (e-1)t2 lt ri lt
t and di lt t2 - Bansal, Pruhs BKP is O(1)-competitive with
respect to temperature -
Can be computed by an online algorithm
t1 et (e-1)t2
t
t2
ri
di
di
current time
19BKP example
3
5
4
0 1 2 3
4 5 6
20BKP example
- Suppose e 2.7
- t 4
- For t 5
- t1 et (e 1)t 2.74 (2.7 1)5 10.8
8.5 2.3
3
5
4
0 1 2 3
4 5 6
21BKP example
- Suppose e 2.7
- t 4
- For t 5
- t1 et (e 1)t 2.74 (2.7 1)5 10.8
8.5 2.3 - w(t,t1,t) w(4,2,5) 4
3
5
4
0 1 2 3
4 5 6
22BKP example
- Suppose e 2.7
- t 4
- For t 5
- t1 et (e 1)t 2.74 (2.7 1)5 10.8
8.5 2.3 - w(t,t1,t) w(4,2,5) 4
- w(t,t1,t) /e(t-t) w(4,2,5)/2.7(5-4) 4/2.7
1.5
3
5
4
0 1 2 3
4 5 6
23BKP example
- Suppose e 2.7
- t 4
- For t 6
- t1 et (e 1)t 2.74 (2.7 1)6 10.8
10.2 0 - w(t,t1,t) w(4,0,6) 4 5 3 12
- w(t,t1,t) /e(t-t) w(4,0,6)/2.7(6-4) 12/5.4
2.22
3
5
4
0 1 2 3
4 5 6
24BKP example
- Suppose e 2.7
- t 4
- So t2 6
- s(4) e2.22 2.7 2.22 6
- Bansal, Pruhs BKP is O(1)-competitive with
respect to temperature -
3
5
4
0 1 2 3
4 5 6
25Future Work
- Combination of Speed Scaling and Power Down
- What about multicore processors?
- What about systems with rejuvinative sources
(i.e. solar cells)?