Michael J. Neely, University of Southern California www- bcfc /~ mjneely

23
Michael J. Neely, University of Southern California http://www-bcf.usc.edu/~mjneely/ CISS, Princeton University, March 2012 nchronous Scheduling for Energy Optimalit Systems with Multiple Servers t Server 1 0 1 2 3 0 1 2 0 1 2 3 4 Server 2 Server 3 t 0 t 1 t 2 t 3 t 4 t 5 t 6 t 7 t 8 t 10 t 9

description

Asynchronous Scheduling for Energy Optimality in Systems with Multiple Servers. Server 3. 0. 1. 2. 3. 4. Server 2. 0. 1. 2. Server 1. 0. 1. 2. 3. t. t 0. t 1. t 2. t 3. t 4. t 5. t 6. t 7. t 8. t 9. t 10. Michael J. Neely, University of Southern California - PowerPoint PPT Presentation

Transcript of Michael J. Neely, University of Southern California www- bcfc /~ mjneely

Page 1: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Michael J. Neely, University of Southern Californiahttp://www-bcf.usc.edu/~mjneely/

CISS, Princeton University, March 2012

Asynchronous Scheduling for Energy Optimality inSystems with Multiple Servers

tServer 1 0 1 2 3

0 1 20 1 2 3 4

Server 2Server 3

t0 t1 t2 t3 t4 t5 t6 t7 t8 t10t9

Page 2: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Motivation

The following things are important:

• Multi-core processing architectures.

• Distributed data center processing.

• Energy-efficiency.

Page 3: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

λ1

λ2

λΝ

Server 1

• N classes of jobs, with Poisson arrivals.• Jobs are queued according to class: Q1(t), …, QN(t).• S heterogeneous servers. Servers can have…

…different classes that are allowed for service. …different processing mode options. …different processing times and energy expenditures.

Server 2

Server S

Page 4: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Consider one particular server:

Active Active ActiveIdle Idle

Frame 0 Frame 1

Ds[0] Is[0] Ds[1] Is[1] Ds[2]t

• Continuous Time operation.• Each server s in {1, …, S} operates over frames.• At frame r in {0, 1, 2, …}, server s decides:

ms[r] = processing mode for frame r.

(chosen in some abstract set of options Ms). Is[r] = Idle time for frame r (possibly 0).

(chosen in the interval [0, Imax]).

Page 5: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Affect of Decisions on 1 Frame

Active Active ActiveIdle Idle

Frame 0 Frame 1

Ds[0] Is[0] Ds[1] Is[1] Ds[2]t

Choosing ms[r], Is[r] determines:

• μsn[r] = # jobs of type n that can be served by s

= μsn(ms[r]) (for each n in {1, …, N})

• es[r] = energy expended by server s

= esproc(ms[r]) + ps

idle Is[r]

• Ts[r] = frame duration for server s

= D(ms[r]) + Is[r]

Page 6: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Now put all servers together:

tServer 1 0 1 2 3

0 1 20 1 2 3 4

Server 2Server 3

t0 t1 t2 t3 t4 t5 t6 t7 t8 t10t9

• tk = start of kth sub-frame.

• S(tk) = {servers that start a frame at time tk}.

What is the “state” at time tk?

State has size at least 2S.

(because each server is either ACTIVE or IDLE)

Page 7: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

A “Simpler” Approach• Look at the time averages that the network can achieve, and that are necessary.

• Define ēs, Ts, μsn as frame averages:

• The time average energy for server s is then:

Page 8: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

The Optimization Problem

• Goal: Minimize total time average power subject to supporting all data (i.e., stabilizing all queues).

• Minimum power is given by the following problem:

Is this really “simpler”? How to solve this?

Page 9: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Special Case for Intuition

• Suppose set of mode options Ms is finite for all s.• Can show optimality of stationary, randomized policies with Is fixed, and with Pr[ms[r] = ms] = qs(ms):

Page 10: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Special Case for Intuition

• Suppose set of mode options Ms is finite for all s.• Can show optimality of stationary, randomized policies with Is fixed, and with Pr[ms[r] = ms] = qs(ms):

Page 11: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Reminiscent of a “Linear Fractional (LF) Program”

• LF Problems are non-convex, but can be solved efficiently:Boyd, Vandenberghe book (non-linear change of variables).Neely 2011 presents online method (for 1-server problem).

• Our problem is not LF. It has: Fractional terms in the constraints. Fractional terms with different denominators. Such problems are generally intractable.

Page 12: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Reminiscent of a “Linear Fractional (LF) Program”

• LF Problems are non-convex, but can be solved efficiently:Boyd, Vandenberghe book (non-linear change of variables).Neely 2011 presents online method (for 1-server problem).

• Our problem is not LF. It has: Fractional terms in the constraints. Fractional terms with different denominators. Such problems are generally intractable. BUT: Our problem has special physical structure!

Page 13: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Main Result

• We exploit the physical structure to solve the problem.

• Our solution is an online algorithm and:Does not require knowledge of arrival rates.Works even if the option sets Ms are infinite.Adaptive when rates change.

• Extends Lyapunov optimization theory to treat coupled systems that operate asynchronously over their own timelines.

Page 14: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

We use 2 Ideas from Restless Bandit Theory

• Drift-Plus-Penalty Ratio from our prior work [Li, Neely 2010, 2011].

• View discrete rewards as being continuously integrated over time (similar to Tsitsiklis 94

“short proof” of Gitten’s index theorem).

Page 15: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Continuously Integrating the Energy Penalty

time

Accumulated energy expenditure for one server s

• Define: Rs(t) = Current frame number of server s.• Define: ps(t) = es[Rs(t)]/Ts[Rs(t)] = penalty rate function. • If t = start of new frame for server s, then:

Page 16: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Continuously Integrating the Energy Penalty

time

Accumulated energy expenditure for one server s

• Define: Rs(t) = Current frame number of server s.• Define: ps(t) = es[Rs(t)]/Ts[Rs(t)] = penalty rate function. • If t = start of new frame for server s, then:

Page 17: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

A look at one sub-frame [t4, t5]:

tServer 1 0 1 2 3

0 1 20 1 2 3 4

Server 2Server 3

t0 t1 t2 t3 t4 t5 t6 t7 t8 t10t9

We have effective penalty rates and effective service rates:

• ps(t) = es[Rs(t)]/Ts[Rs(t)]

• γsn(t) = μsn[Rs(t)]/Ts [Rs (t)]

Page 18: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

A look at one sub-frame [t4, t5]:

tServer 1 0 1 2 3

0 1 20 1 2 3 4

Server 2Server 3

t0 t1 t2 t3 t4 t5 t6 t7 t8 t10t9

• Define Lyapunov function on queue state (Q1(t), …, QN(t)):

L(t) = ∑nQn(t)2

• Define Lyapunov Drift Δ(tk) for sub-frame k:

Δ(tk) = L(tk+1) – L(tk)• Define Drift-Plus-Integrated-Penalty:

Page 19: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Strategy

tServer 1 0 1 2 3

0 1 20 1 2 3 4

Server 2Server 3

t0 t1 t2 t3 t4 t5 t6 t7 t8 t10t9

When it is time for server s to make a decision, it chooses a processing mode and idle time to minimize its contribution to the drift-plus-integrated-penalty expression.

Page 20: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Resulting Algorithm

At each time tk, each server s that starts a new frame at this time does the following:

• Observe all queues Q1(tk), …, QN(tk). • Choose mode and idle time decisions msk, Isk to solve:

• No knowledge of arrival rates λ1, …, λN.• Decentralized.• Generalizes the max-weight algorithm of Tassiulas &

Ephremides 1992 to treat multiple asynchronous servers and joint stability and power optimization.

Page 21: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Resulting Algorithm

At each time tk, each server s that starts a new frame at this time does the following:

• Observe all queues Q1(tk), …, QN(tk). • Choose mode and idle time decisions msk, Isk to solve:

*Note: Given msk, it is easy to show that:

Page 22: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Performance Theorem

If the problem is feasible, then:

(a) All queues are stable.

(b) Average power satisfies for all k in {1, 2, 3, …}:

(c) Average queue size is O(V).

Page 23: Michael J. Neely,   University of Southern California www- bcfc /~ mjneely

Conclusions

• Lyapunov optimization method extended to treat multi-server systems operating over asynchronous timelines.

• Non-Convex Fractional Problem is solved.

• Algorithm is decentralized at each server.

• Algorithm does not require knowledge of rates (λ1, …, λN).

tServer 1 0 1 2 3

0 1 20 1 2 3 4

Server 2Server 3

t0 t1 t2 t3 t4 t5 t6 t7 t8 t10t9