23
FINDING THE OPTIMAL QUANTUM SIZE Revisiting the M/G/1 Round-Robin Queue VARUN GUPTA Carnegie Mellon University

VARUN GUPTA Carnegie Mellon University - SP Loading …home.uchicago.edu/~guptav/talks/MG1_RR.pdf · Revisiting the M/G/1 Round-Robin Queue VARUN GUPTA Carnegie Mellon University

Embed Size (px)

Citation preview

FINDING THE OPTIMAL QUANTUM SIZE

Revisiting the M/G/1 Round-Robin Queue

VARUN GUPTA

Carnegie Mellon University

2

M/G/1/RR

Jobs served for q

units at a time

Poisson

arrivals

Incomplete

jobs

3

M/G/1/RR

Jobs served for q

units at a time

Poisson

arrivals

Incomplete

jobs

4

M/G/1/RR

• arrival rate =

• job sizes i.i.d. ~ S

• load

Jobs served for q

units at a time

Completed

jobs

Incomplete

jobs

Poisson

arrivals

Squared coefficient of

variability (SCV) of job sizes:

C2 0

5

M/G/1/RR

M/G/1/PS M/G/1/FCFS

q q → 0 q =

Preemptions cause overhead

(e.g. OS scheduling) Variable job sizes cause long delays

small q large q

preemption

overheads job size

variability

6

GOAL

Optimal operating q for M/G/1/RR with overheads and high C2

SUBGOAL

Sensitivity Analysis: Effect of q and C2 on M/G/1/RR performance

(no switching overheads)

PRIOR WORK

• Lots of exact analysis: [Wolff70], [Sakata et al.71],

[Brown78]

No closed-form solutions/bounds

No simple expressions for interplay of q and C2

effect of preemption overheads

7

Outline

Effect of q and C2 on mean response time

Approximate analysis

Bounds for M/G/1/RR

Choosing the optimal quantum size

No preemption

overheads

Effect of

preemption

overheads

8

Approximate sensitivity analysis of

M/G/1/RR

Approximation assumption 1:

Service quantum ~ Exp(1/q)

Approximation assumption 2:

Job size distribution

9

Approximate sensitivity analysis of

M/G/1/RR

• Monotonic in q

– Increases from E[TPS] → E[TFCFS]

• Monotonic in C2

– Increases from E[TPS] → E[TPS](1+q)

For high C2: E[TRR*] ≈ E[TPS](1+q)

10

Outline

Effect of q and C2 on mean response time

Approximate analysis

Bounds for M/G/1/RR

Choosing the optimal quantum size

11

THEOREM:

M/G/1/RR bounds

Assumption: job sizes {0,q,…,Kq}

Lower bound is TIGHT:

E[S] = iq

Upper bound is TIGHT within (1+/K):

Job sizes {0,Kq}

12

Outline

Effect of q and C2 on mean response time

Approximate analysis

Bounds for M/G/1/RR

Choosing the optimal quantum size

13

Optimizing q

Preemption overhead = h

1.

2. Minimize E[TRR] upper bound from Theorem:

Common case:

14

0

5

10

15

20

25

30

0 0.5 1 1.5 2 2.5service quantum (q)

Me

an

re

sp

on

se

tim

e

Job size distribution: H2 (balanced means) E[S] = 1, C2 = 19, = 0.8

h=0

15

0

5

10

15

20

25

30

0 0.5 1 1.5 2 2.5service quantum (q)

Me

an

re

sp

on

se

tim

e

Job size distribution: H2 (balanced means) E[S] = 1, C2 = 19, = 0.8

approximation q*

optimum q

1%

h=0

16

0

5

10

15

20

25

30

0 0.5 1 1.5 2 2.5service quantum (q)

Me

an

re

sp

on

se

tim

e

Job size distribution: H2 (balanced means) E[S] = 1, C2 = 19, = 0.8

1% 2.5%

h=0

approximation q*

optimum q

17

0

5

10

15

20

25

30

0 0.5 1 1.5 2 2.5service quantum (q)

Me

an

re

sp

on

se

tim

e

Job size distribution: H2 (balanced means) E[S] = 1, C2 = 19, = 0.8

1% 2.5%

5%

h=0

approximation q*

optimum q

18

0

5

10

15

20

25

30

0 0.5 1 1.5 2 2.5service quantum (q)

Me

an

re

sp

on

se

tim

e

Job size distribution: H2 (balanced means) E[S] = 1, C2 = 19, = 0.8

1% 2.5%

5%

7.5%

h=0

approximation q*

optimum q

19

0

5

10

15

20

25

30

0 0.5 1 1.5 2 2.5service quantum (q)

Me

an

re

sp

on

se

tim

e

Job size distribution: H2 (balanced means) E[S] = 1, C2 = 19, = 0.8

1% 2.5%

5%

7.5%

10%

h=0

approximation q*

optimum q

20

Outline

Effect of q and C2 on mean response time

Approximate analysis

Bounds for M/G/1/RR

Choosing the optimal quantum size

Conclusion/Contributions

• Simple approximation and bounds for

M/G/1/RR

• Optimal quantum size for handling highly

variable job sizes under preemption

overheads

q

22

Bounds – Proof outline

• Di = mean delay for ith quantum of service

• D = [D1 D2 ... DK]

• D is the fixed point of a monotone linear system:

DT = APDT+b

D1

D2

f1=0

f2=0

D

D’

D*

Sufficient condition

for lower bound:

D’T APD’T+b

for all P

Sufficient condition

for upper bound:

D*T APD*T+b

for all P

23

Optimizing q

• Preemption overhead = h

• q’ = q+h, E[S]’ → E[S] (1+h/q), ’ = E[S]’

Heavy traffic: Small overhead: