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

Upload: fagan

Post on 22-Feb-2016

43 views

Category:

Documents


0 download

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

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