Multiple Class G-Networks with Restart Jean-Michel Fourneau, Katinka - - PowerPoint PPT Presentation

multiple class g networks with restart
SMART_READER_LITE
LIVE PREVIEW

Multiple Class G-Networks with Restart Jean-Michel Fourneau, Katinka - - PowerPoint PPT Presentation

Multiple Class G-Networks with Restart Jean-Michel Fourneau, Katinka Wolter , Philipp Reinecke, Tilman Krau and Alexandra Danilkina PRiSM, CNRS Freie Universit at Berlin HP Labs Bristol Universit e de Versailles Institut f ur


slide-1
SLIDE 1

Multiple Class G-Networks with Restart

Jean-Michel Fourneau, Katinka Wolter, Philipp Reinecke, Tilman Krauß and Alexandra Danilkina

PRiSM, CNRS Universit´ e de Versailles France Freie Universit¨ at Berlin Institut f¨ ur Informatik HP Labs Bristol Long Down Avenue, Bristol, UK

ISCAS, 26 September 2013

slide-2
SLIDE 2

Table of Contents

1 The restart method 2 Evaluation Approaches 3 The model 4 Examples 5 Conclusions

1 / 11

slide-3
SLIDE 3

The restart method

://www request

Restart: A client sends a request.

2 / 11

slide-4
SLIDE 4

The restart method

Restart: A client sends a request. If there is no response within a reasonable time,

2 / 11

slide-5
SLIDE 5

The restart method

://www restart request

Restart: A client sends a request. If there is no response within a reasonable time, the request is repeated

2 / 11

slide-6
SLIDE 6

The restart method

response

Restart: A client sends a request. If there is no response within a reasonable time, the request is repeated

2 / 11

slide-7
SLIDE 7

The restart method

response

Restart: A client sends a request. If there is no response within a reasonable time, the request is repeated Restart may reduce response-times

2 / 11

slide-8
SLIDE 8

The restart method

://www ://www ://www request request request

Restart: A client sends a request. If there is no response within a reasonable time, the request is repeated Restart may reduce response-times Many clients send a request.

2 / 11

slide-9
SLIDE 9

The restart method

Restart: A client sends a request. If there is no response within a reasonable time, the request is repeated Restart may reduce response-times Many clients send a request. If there is no response within a reasonable time,

2 / 11

slide-10
SLIDE 10

The restart method

://www ://www ://www repeat request repeat request repeat request

Restart: A client sends a request. If there is no response within a reasonable time, the request is repeated Restart may reduce response-times Many clients send a request. If there is no response within a reasonable time, the request is repeated

2 / 11

slide-11
SLIDE 11

The restart method

response response response

Restart: A client sends a request. If there is no response within a reasonable time, the request is repeated Restart may reduce response-times Many clients send a request. If there is no response within a reasonable time, the request is repeated Question: Will restart reduce response-times for all?

2 / 11

slide-12
SLIDE 12

The restart method

response response response

Restart: A client sends a request. If there is no response within a reasonable time, the request is repeated Restart may reduce response-times Many clients send a request. If there is no response within a reasonable time, the request is repeated Question: Will restart reduce response-times for all? Insight useful for

2 / 11

slide-13
SLIDE 13

The restart method

response response response

Restart: A client sends a request. If there is no response within a reasonable time, the request is repeated Restart may reduce response-times Many clients send a request. If there is no response within a reasonable time, the request is repeated Question: Will restart reduce response-times for all? Insight useful for

Optimising software performance

2 / 11

slide-14
SLIDE 14

The restart method

response response response

Restart: A client sends a request. If there is no response within a reasonable time, the request is repeated Restart may reduce response-times Many clients send a request. If there is no response within a reasonable time, the request is repeated Question: Will restart reduce response-times for all? Insight useful for

Optimising software performance Development of benchmarks

2 / 11

slide-15
SLIDE 15

Evaluation Approaches

Experimentation on test-beds – low abstraction level

Set up the system in the lab Cost and time constraints Results do not generalise

3 / 11

slide-16
SLIDE 16

Evaluation Approaches

Experimentation on test-beds – low abstraction level

Set up the system in the lab Cost and time constraints Results do not generalise

Simulations – medium abstraction level

Build a simulation (e.g. NS-2, OMNeT++, M¨

  • bius)

Give slightly more general results than measurement studies Results are less realistic

3 / 11

slide-17
SLIDE 17

Evaluation Approaches

F(x) = x

0 f(u)du

Experimentation on test-beds – low abstraction level

Set up the system in the lab Cost and time constraints Results do not generalise

Simulations – medium abstraction level

Build a simulation (e.g. NS-2, OMNeT++, M¨

  • bius)

Give slightly more general results than measurement studies Results are less realistic

Analytical Approaches – high abstraction level

Formalise problem Give general insights Results might be far from reality

3 / 11

slide-18
SLIDE 18

G-networks

  • ne could guess, a G-network is a genetic network

4 / 11

slide-19
SLIDE 19

G-networks

  • ne could guess, a G-network is a genetic network

it is not.

4 / 11

slide-20
SLIDE 20

G-networks

  • ne could guess, a G-network is a genetic network

it is not. G as generalized queueing network or Gelenbe network

4 / 11

slide-21
SLIDE 21

G-networks

  • ne could guess, a G-network is a genetic network

it is not. G as generalized queueing network or Gelenbe network A G-network is an open queueing network with several types

  • f customers

regular jobs negative customers, signals (signals between queues)

4 / 11

slide-22
SLIDE 22

G-networks

Class changes upon restart

Class 2 Class 1 Class K

PS

Restart Signals Jobs

Jobs arrive into one of K classes

5 / 11

slide-23
SLIDE 23

G-networks

Class changes upon restart

Class 2 Class 1 Class K

PS

Restart Signals Jobs

Jobs arrive into one of K classes Service time PH-distributed

5 / 11

slide-24
SLIDE 24

G-networks

Class changes upon restart

Class 2 Class 1 Class K

PS

Restart Signals Jobs

Jobs arrive into one of K classes Service time PH-distributed One class of signals (restarts) with success probability

5 / 11

slide-25
SLIDE 25

G-networks

Class changes upon restart

Class 2 Class 1 Class K

PS

Restart Signals Jobs

Jobs arrive into one of K classes Service time PH-distributed One class of signals (restarts) with success probability Upon restart a job changes class, routing probability, success probabilities

5 / 11

slide-26
SLIDE 26

G-networks

Class changes upon restart

Class 2 Class 1 Class K

PS

Restart Signals Jobs

Jobs arrive into one of K classes Service time PH-distributed One class of signals (restarts) with success probability Upon restart a job changes class, routing probability, success probabilities Markovian model

5 / 11

slide-27
SLIDE 27

G-networks

Class changes upon restart

Class 2 Class 1 Class K

PS

Restart Signals Jobs

Class changes upon restart

Class 2 Class 1

PS

Restart Signals Jobs Class K

PS

Class 1 Class 2 Class K Restart Signals Queue j Queue i Jobs

Jobs arrive into one of K classes Service time PH-distributed One class of signals (restarts) with success probability Upon restart a job changes class, routing probability, success probabilities Markovian model Product-form solution

5 / 11

slide-28
SLIDE 28

G-networks

Class changes upon restart

Class 2 Class 1 Class K

PS

Restart Signals Jobs

Class changes upon restart

Class 2 Class 1

PS

Restart Signals Jobs Class K

PS

Class 1 Class 2 Class K Restart Signals Queue j Queue i Jobs

Jobs arrive into one of K classes Service time PH-distributed One class of signals (restarts) with success probability Upon restart a job changes class, routing probability, success probabilities Markovian model Product-form solution Derivation of standard queueing metrics straight forward

5 / 11

slide-29
SLIDE 29

First example: iid services

Model represents infinite restarts

6 / 11

slide-30
SLIDE 30

First example: iid services

Model represents infinite restarts Jobs arrive to class 1 at rate 0.012

6 / 11

slide-31
SLIDE 31

First example: iid services

0.9 0.1 Exp(5) Exp(0.1) Exp(2)

Model represents infinite restarts Jobs arrive to class 1 at rate 0.012 PH-distributed service time, scv = 6.7539

6 / 11

slide-32
SLIDE 32

First example: iid services

Model represents infinite restarts Jobs arrive to class 1 at rate 0.012 PH-distributed service time, scv = 6.7539 Determine utilisation, expected queue length and expected waiting time

6 / 11

slide-33
SLIDE 33

Second example: 5 classes

Class changes upon restart

Class 2 Class 1 Class 5

PS

Restart Signals Jobs

Jobs arrive only to class 1 at rate 0.1

7 / 11

slide-34
SLIDE 34

Second example: 5 classes

Class changes upon restart

Class 2 Class 1 Class 5

PS

Restart Signals Jobs

Exp(1) Exp(1) class 1 class 2 class 3 class 4 class 5 Exp(2) Exp(3) Exp(4) Exp(5) Exp(2) Exp(3) Exp(4) Exp(5)

Jobs arrive only to class 1 at rate 0.1 Successively faster Erlang(2) service, i.e. µ(k,p) = (1, 2, 3, 4, 5)

7 / 11

slide-35
SLIDE 35

Second example: 5 classes

Class changes upon restart

Class 2 Class 1 Class 5

PS

Restart Signals Jobs

Exp(1) Exp(1) class 1 class 2 class 3 class 4 class 5 Exp(2) Exp(3) Exp(4) Exp(5) Exp(2) Exp(3) Exp(4) Exp(5)

Jobs arrive only to class 1 at rate 0.1 Successively faster Erlang(2) service, i.e. µ(k,p) = (1, 2, 3, 4, 5) Restart with resume semantics - work is not lost

7 / 11

slide-36
SLIDE 36

Second example: 5 classes

Class changes upon restart

Class 2 Class 1 Class 5

PS

Restart Signals Jobs

Jobs arrive only to class 1 at rate 0.1 Successively faster Erlang(2) service, i.e. µ(k,p) = (1, 2, 3, 4, 5) Restart with resume semantics - work is not lost Completed jobs leave with prob 1.

7 / 11

slide-37
SLIDE 37

Second example: 5 classes

Class changes upon restart

Class 2 Class 1 Class 5

PS

Restart Signals Jobs

Jobs arrive only to class 1 at rate 0.1 Successively faster Erlang(2) service, i.e. µ(k,p) = (1, 2, 3, 4, 5) Restart with resume semantics - work is not lost Completed jobs leave with prob 1. Restart in class 5 starts job anew

7 / 11

slide-38
SLIDE 38

Second example: 5 classes

Class changes upon restart

Class 2 Class 1 Class 5

PS

Restart Signals Jobs

Class changes upon restart Class 2 Class 1 Class K PS Server Client Send Job 1 Job 1 Send Job 2 Timeout Job 1 Job 2 Restart 1 Response 2 Response 1 time t

Jobs arrive only to class 1 at rate 0.1 Successively faster Erlang(2) service, i.e. µ(k,p) = (1, 2, 3, 4, 5) Restart with resume semantics - work is not lost Completed jobs leave with prob 1. Restart in class 5 starts job anew Compare results with simulation using SFERA

7 / 11

slide-39
SLIDE 39

Results

0.1 1 10 100 1000 0.001 0.01 0.1 1 10 100 restart rate utilisation ρ Mean queue length expected waiting time

0.153 0.1535 0.154 0.1545 0.155 0.1555 0.35 0.4 0.45 0.5 0.55 Queue Length Restart Interval

Expected queue length and expected waiting time for different values of the restart rate Average queue length and average response time for the simulation

8 / 11

slide-40
SLIDE 40

Results

0.1 1 10 100 1000 0.001 0.01 0.1 1 10 100 restart rate utilisation ρ Mean queue length expected waiting time

0.153 0.1535 0.154 0.1545 0.155 0.1555 0.35 0.4 0.45 0.5 0.55 Queue Length Restart Interval

Expected queue length and expected waiting time for different values of the restart rate Average queue length and average response time for the simulation Both have minimum for similar restart rate Why are simulation and G-network not exactly the same?

8 / 11

slide-41
SLIDE 41

What is the difference between SFERA and G-network

Class changes upon restart Class 2 Class 1 Class K PS Server Client Send Job 1 Job 1 Send Job 2 Timeout Job 1 Job 2 Restart 1 Response 2 Response 1 time t

Simulation assigns a timeout to each job

9 / 11

slide-42
SLIDE 42

What is the difference between SFERA and G-network

Class changes upon restart Class 2 Class 1 Class K PS Server Client Send Job 1 Job 1 Send Job 2 Timeout Job 1 Job 2 Restart 1 Response 2 Response 1 time t

Simulation assigns a timeout to each job PS strategy means processing speed depends on queue length

9 / 11

slide-43
SLIDE 43

What is the difference between SFERA and G-network

Class changes upon restart Class 2 Class 1 Class K PS Server Client Send Job 1 Job 1 Send Job 2 Timeout Job 1 Job 2 Restart 1 Response 2 Response 1 time t

Simulation assigns a timeout to each job PS strategy means processing speed depends on queue length Response time depends on queue length

9 / 11

slide-44
SLIDE 44

What is the difference between SFERA and G-network

Class changes upon restart Class 2 Class 1 Class K PS Server Client Send Job 1 Job 1 Send Job 2 Timeout Job 1 Job 2 Restart 1 Response 2 Response 1 time t

Simulation assigns a timeout to each job PS strategy means processing speed depends on queue length Response time depends on queue length Each event (arrival, departure) results in reschedule of all future events

9 / 11

slide-45
SLIDE 45

What is the difference between SFERA and G-network

Class changes upon restart Class 2 Class 1 Class K PS Server Client Send Job 1 Job 1 Send Job 2 Timeout Job 1 Job 2 Restart 1 Response 2 Response 1 time t

Simulation assigns a timeout to each job PS strategy means processing speed depends on queue length Response time depends on queue length Each event (arrival, departure) results in reschedule of all future events Timeout always remains attached to a job

9 / 11

slide-46
SLIDE 46

What is the difference between SFERA and G-network

Class changes upon restart Class 2 Class 1 Class K PS Server Client Send Job 1 Job 1 Send Job 2 Timeout Job 1 Job 2 Restart 1 Response 2 Response 1 time t Class changes upon restart Class 2 Class 1 PS Restart Signals Jobs Class K PS Class 1 Class 2 Class K Restart Signals Queue j Queue i Jobs

Simulation assigns a timeout to each job PS strategy means processing speed depends on queue length Response time depends on queue length Each event (arrival, departure) results in reschedule of all future events Timeout always remains attached to a job G-network restarts random job Jobs have no ’age’

9 / 11

slide-47
SLIDE 47

Third example: more complex service times

Restart Signals Class 1 Class 2 Class 5 Class 4 PS Class 3 Jobs Jobs

Job arrivals to class 1 (λ1 = 0.004) and class 2 (λ2 = 0.01)

10 / 11

slide-48
SLIDE 48

Third example: more complex service times

Restart Signals Class 1 Class 2 Class 5 Class 4 PS Class 3 Jobs Jobs

0.9 0.1 Exp(5) Exp(0.1) Exp(2)

Job arrivals to class 1 (λ1 = 0.004) and class 2 (λ2 = 0.01) Restart succeeds with prob 0.5 in phase 1 and 2, with prob 1 in phase 3

10 / 11

slide-49
SLIDE 49

Third example: more complex service times

Restart Signals Class 1 Class 2 Class 5 Class 4 PS Class 3 Jobs Jobs

Exp(0.1) Exp(1) 1/4 3/4 Exp(1) 2/3 1/3

Job arrivals to class 1 (λ1 = 0.004) and class 2 (λ2 = 0.01) Restart succeeds with prob 0.5 in phase 1 and 2, with prob 1 in phase 3 In class 2 service time distribution is no APH, restart succeeds

  • nly in phase 3

10 / 11

slide-50
SLIDE 50

Third example: more complex service times

Restart Signals Class 1 Class 2 Class 5 Class 4 PS Class 3 Jobs Jobs

Exp(0.5) Exp(0.5) Exp(0.5)

Job arrivals to class 1 (λ1 = 0.004) and class 2 (λ2 = 0.01) Restart succeeds with prob 0.5 in phase 1 and 2, with prob 1 in phase 3 In class 2 service time distribution is no APH, restart succeeds

  • nly in phase 3

Class 3, 4, 5 have Erlang(3) service time with λ = 0.5 and different restart success probs

10 / 11

slide-51
SLIDE 51

Third example: more complex service times

Restart Signals Class 1 Class 2 Class 5 Class 4 PS Class 3 Jobs Jobs

0.01 0.1 1 10 100 50 100 150 200 250 300 Restart Rate rho Expected Queue Length Expected Waiting Time

Job arrivals to class 1 (λ1 = 0.004) and class 2 (λ2 = 0.01) Restart succeeds with prob 0.5 in phase 1 and 2, with prob 1 in phase 3 In class 2 service time distribution is no APH, restart succeeds

  • nly in phase 3

Class 3, 4, 5 have Erlang(3) service time with λ = 0.5 and different restart success probs Restart has strong positive effect

10 / 11

slide-52
SLIDE 52

Conclusions

G-networks can have several classes in several queues

11 / 11

slide-53
SLIDE 53

Conclusions

G-networks can have several classes in several queues Different type of job arrivals are possible - different clients

11 / 11

slide-54
SLIDE 54

Conclusions

G-networks can have several classes in several queues Different type of job arrivals are possible - different clients Signals can model restarts

11 / 11

slide-55
SLIDE 55

Conclusions

G-networks can have several classes in several queues Different type of job arrivals are possible - different clients Signals can model restarts Product-form solution, standard queueing measures

11 / 11

slide-56
SLIDE 56

Conclusions

G-networks can have several classes in several queues Different type of job arrivals are possible - different clients Signals can model restarts Product-form solution, standard queueing measures Great flexibility in service time distributions, Phase-type

11 / 11

slide-57
SLIDE 57

Conclusions

G-networks can have several classes in several queues Different type of job arrivals are possible - different clients Signals can model restarts Product-form solution, standard queueing measures Great flexibility in service time distributions, Phase-type Find optimal restart interval in most situations, i.e. restart reduces response time

11 / 11

slide-58
SLIDE 58

Conclusions

G-networks can have several classes in several queues Different type of job arrivals are possible - different clients Signals can model restarts Product-form solution, standard queueing measures Great flexibility in service time distributions, Phase-type Find optimal restart interval in most situations, i.e. restart reduces response time Modelling power for arrivals not fully exploited

11 / 11

slide-59
SLIDE 59

Conclusions

G-networks can have several classes in several queues Different type of job arrivals are possible - different clients Signals can model restarts Product-form solution, standard queueing measures Great flexibility in service time distributions, Phase-type Find optimal restart interval in most situations, i.e. restart reduces response time Modelling power for arrivals not fully exploited Formalism to study reliable protocols, rejuvenation, checkpointing, .....

11 / 11

slide-60
SLIDE 60

Conclusions

G-networks can have several classes in several queues Different type of job arrivals are possible - different clients Signals can model restarts Product-form solution, standard queueing measures Great flexibility in service time distributions, Phase-type Find optimal restart interval in most situations, i.e. restart reduces response time Modelling power for arrivals not fully exploited Formalism to study reliable protocols, rejuvenation, checkpointing, ..... Need better tool support.

11 / 11

slide-61
SLIDE 61

Thank you.