Allocation of Clients to Multiple Servers on Large Scale - - PowerPoint PPT Presentation

allocation of clients to multiple servers on large scale
SMART_READER_LITE
LIVE PREVIEW

Allocation of Clients to Multiple Servers on Large Scale - - PowerPoint PPT Presentation

Allocation of Clients to Multiple Servers on Large Scale Heterogeneous Platforms Olivier Beaumont, Lionel Eyraud-Dubois, Christopher Thaves-Caro Laboratoire Bordelais de Recherche en Informatique Equipe CEPAGE (INRIA) Scheduling in


slide-1
SLIDE 1

Allocation of Clients to Multiple Servers on Large Scale Heterogeneous Platforms

Olivier Beaumont, Lionel Eyraud-Dubois, Christopher Thaves-Caro

Laboratoire Bordelais de Recherche en Informatique ´ Equipe CEPAGE (INRIA)

Scheduling in Knoxville 14 May 2009

slide-2
SLIDE 2

Introduction

Outline

1

Introduction

2

Independent tasks distribution

3

Online considerations

4

Conclusions

Lionel Eyraud-Dubois (LaBRI-Cepage) 2/ 24

slide-3
SLIDE 3

Introduction

Introduction

Divisible Task Scheduling

Master dispatches tasks to Workers Tasks can be arbitrarily divided Standard communication model: One Port

  • Lionel Eyraud-Dubois (LaBRI-Cepage)

3/ 24

slide-4
SLIDE 4

Introduction

Explore the Bounded Multi Port model

Simultaneous communications, with a per-node bandwidth bound Internet-like: no contention inside the network Steady-state approach Keep things reasonable: degree constraint

C1 Ci C2 S0 S1 Sm Cn w1 wn wi w2 b′

i

b′

1

b′

2

b′

n

dm d1 b0 d0 bm b1

Lionel Eyraud-Dubois (LaBRI-Cepage) 4/ 24

slide-5
SLIDE 5

Introduction

Explore the Bounded Multi Port model

Simultaneous communications, with a per-node bandwidth bound Internet-like: no contention inside the network Steady-state approach Keep things reasonable: degree constraint

C1 Ci C2 S0 S1 Sm Cn w1 wn wi w2 b′

i

b′

1

b′

2

b′

n

dm d1 b0 d0 bm b1

Lionel Eyraud-Dubois (LaBRI-Cepage) 4/ 24

slide-6
SLIDE 6

Introduction

Precise model

An instance

m servers, with bandwidth bi and maximal out-degree di n clients, with capacity wj

A solution

An assignment wi

j of bandwidth from server i to client j

∀j,

  • i wj

i ≤ bj

(capacity constraint at server j) ∀j, Card{i, wi

j > 0} ≤ dj

(degree constraint at server j) ∀i,

  • j wj

i ≤ wi

(capacity constraint at client i) Maximise T =

i,j wi j

Lionel Eyraud-Dubois (LaBRI-Cepage) 5/ 24

slide-7
SLIDE 7

Independent tasks distribution

Outline

1

Introduction

2

Independent tasks distribution Complexity Algorithm Seq Practical comparisons with heuristics

3

Online considerations

4

Conclusions

Lionel Eyraud-Dubois (LaBRI-Cepage) 6/ 24

slide-8
SLIDE 8

Independent tasks distribution Complexity

Complexity

NP-Hard: reduction from 3-Partition

◮ n servers with bandwidth B and degree 3 ◮ 3n clients with capacity ai, ai = nB ◮ Throughput nB reachable iff 3-Partition has a solution

Easy to solve without the degree constraint

◮ solve max-flow on the complete bipartite graph

→ Loosen the degree constraint

Lionel Eyraud-Dubois (LaBRI-Cepage) 7/ 24

slide-9
SLIDE 9

Independent tasks distribution Algorithm Seq

Algorithm Seq

Resource augmentation: allowed one more connection per server Order clients by capacity For each server, bandwidth b and out-degree d:

1

Find a consecutive sublist of length d + 1 such that:

⋆ total capacity is at least b ⋆ capacity of the first d clients is less than b 2

Assign these clients, perhaps split the last one

3

Update the client list

Choice of a subset does not matter Order of servers does not matter

Lionel Eyraud-Dubois (LaBRI-Cepage) 8/ 24

slide-10
SLIDE 10

Independent tasks distribution Algorithm Seq

An example

  • d1 = 2

b1 = 48 d2 = 5 b2 = 30 d3 = 1 b3 = 68

10 12 17

w4 = 24

31 47

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-11
SLIDE 11

Independent tasks distribution Algorithm Seq

An example

  • d1 = 2

b1 = 48 d2 = 5 b2 = 30 d3 = 1 b3 = 68

10 12 17

w4 = 24

31 47

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-12
SLIDE 12

Independent tasks distribution Algorithm Seq

An example

  • d1 = 2

b1 = 48 d2 = 5 b2 = 30 d3 = 1 b3 = 68

10 12 17

w4 = 24

31 47

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-13
SLIDE 13

Independent tasks distribution Algorithm Seq

An example

  • d2 = 5

b2 = 30 d3 = 1 b3 = 68 C(3,4) = 41 b1 = 48 d1 = 2 C(3,5) = 72

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-14
SLIDE 14

Independent tasks distribution Algorithm Seq

An example

  • d2 = 5

b2 = 30 d3 = 1 b3 = 68

47 12

d1 = 2 b1 = 48

10 24

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-15
SLIDE 15

Independent tasks distribution Algorithm Seq

An example

  • d2 = 5

b2 = 30 d3 = 1 b3 = 68

47 12

d1 = 2 b1 = 48

10 24

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-16
SLIDE 16

Independent tasks distribution Algorithm Seq

An example

  • d3 = 1

b3 = 68 d1 = 2 b1 = 48 b2 = 30 C(1,3) = 46 d2 = 5

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-17
SLIDE 17

Independent tasks distribution Algorithm Seq

An example

  • d3 = 1

b3 = 68

47 16

d1 = 2 b1 = 48 d2 = 5 b2 = 30

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-18
SLIDE 18

Independent tasks distribution Algorithm Seq

An example

  • d3 = 1

b3 = 68

47 16

d1 = 2 b1 = 48 d2 = 5 b2 = 30

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-19
SLIDE 19

Independent tasks distribution Algorithm Seq

An example

  • d1 = 2

b1 = 48 d2 = 5 b2 = 30 b3 = 68 C(1,2) = 63 d3 = 1

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-20
SLIDE 20

Independent tasks distribution Algorithm Seq

An example

  • d2 = 5

b2 = 30 d1 = 2 b1 = 48

5 Remaining server

d3 = 1 b3 = 63

Lionel Eyraud-Dubois (LaBRI-Cepage) 9/ 24

slide-21
SLIDE 21

Independent tasks distribution Algorithm Seq

Why does it work ?

Inuitively, more disparate client lists are “easier” to allocate

Central Lemma

Define C D iff ∀k,

k

  • i=1

Ci ≤

k

  • i=1

Di Statement: if C

Seq(d+1,b)

− − − − − − − → C′

  • D

valid(d,b)

− − − − − → D′ then C′ D′ Recursively, C(m) D(m), thus C(m)

i

≤ D(m)

i

Remaining client capacity is lower with Seq than with any valid allocation

Lionel Eyraud-Dubois (LaBRI-Cepage) 10/ 24

slide-22
SLIDE 22

Independent tasks distribution Algorithm Seq

Remarks

Valid approximation algorithm

At the end, remove the smallest client at each server ∀j, T ′

j ≥ dj dj+1Tj

T ′ ≥

dmin dmin+1T ≥ dmin dmin+1T ∗

Dual problem

Given a throughput K, minimise the maximal degree d∗ needed to reach K Seq with dichotomy achieves d∗ + 1

Lionel Eyraud-Dubois (LaBRI-Cepage) 11/ 24

slide-23
SLIDE 23

Independent tasks distribution Practical comparisons with heuristics

Simple heuristics

Largest Client Largest Server

Order clients and servers by capacities, and assign the currently largest client to the currently largest server. Split and reinsert the client if necessary.

Largest Client Best Connection

Same as before, but sort servers by bj

dj (average available bandwidth).

Online Best Connection

Same as LCBC, but without sorting clients first. Use the server with the closest average available bandwidth to the considered client

Lionel Eyraud-Dubois (LaBRI-Cepage) 12/ 24

slide-24
SLIDE 24

Independent tasks distribution Practical comparisons with heuristics

Experimental setting

Random instance generation

m servers, 10m clients Capacities generated with power law distributions Server degrees nearly proportional to capacities

Natural upper bounds

T ≤

j bj

T ≤

i wi

Instances scaled so that both are roughly equal

Lionel Eyraud-Dubois (LaBRI-Cepage) 13/ 24

slide-25
SLIDE 25

Independent tasks distribution Practical comparisons with heuristics

Results

0.86 0.88 0.9 0.92 0.94 0.96 0.98 1 1.02 1.04 20 40 60 80 100 120 140 Normalized throughput Number of servers Seq LCBC OBC LCLS

Average normalized throughput (over 250 instances) when m varies

Lionel Eyraud-Dubois (LaBRI-Cepage) 14/ 24

slide-26
SLIDE 26

Independent tasks distribution Practical comparisons with heuristics

Results

2 4 6 8 10 12 14 16 18 20 40 60 80 100 120 140 Average alpha* Number of servers Seq LCBC OBC LCLS

Average α∗ when m varies

Lionel Eyraud-Dubois (LaBRI-Cepage) 15/ 24

slide-27
SLIDE 27

Independent tasks distribution Practical comparisons with heuristics

Results

1 10 100 1 1.2 1.4 1.6 1.8 2 Alpha* (logscale) Client capacity dispersion Seq LCBC

α∗ values against dispersion for m = 80

Lionel Eyraud-Dubois (LaBRI-Cepage) 16/ 24

slide-28
SLIDE 28

Online considerations

Outline

1

Introduction

2

Independent tasks distribution

3

Online considerations

4

Conclusions

Lionel Eyraud-Dubois (LaBRI-Cepage) 17/ 24

slide-29
SLIDE 29

Online considerations

Can we do it online ?

When clients come and go

Disallow any change in the previous choices Count the number of changes for various algorithms

In this section

Fully online is impossible Online Seq achieves a low number of changes

Lionel Eyraud-Dubois (LaBRI-Cepage) 18/ 24

slide-30
SLIDE 30

Online considerations

Fully online is impossible

There is no fully online algorithm with resource augmentation factor α and approximation ratio 1

k.

1 server with bandwidth b = k × 2αk+1 and degree k αk groups of clients, group i having capacity 2i

  • ne client of capacity b

A must connect at least one client from each group. ⇒ No more connection available for the last client.

Lionel Eyraud-Dubois (LaBRI-Cepage) 19/ 24

slide-31
SLIDE 31

Online considerations

Online Seq

Add some “locality” in Seq

Always choose the “rightmost” sublist of clients ⇒ Ensures that the splitted client is reinserted at the same place

Local transformations of client lists

C is increased to C+ by

◮ insertion of a new client at position p ◮ capacity increase of Cp+1

Similarly, C is decreased to C− by

◮ deletion of a client at position p ◮ capacity decrease of Cp+1 Lionel Eyraud-Dubois (LaBRI-Cepage) 20/ 24

slide-32
SLIDE 32

Online considerations

Online Seq

Lemma

If C

Seq(d+1,b)

− − − − − − − → C′ ↓ C+ = D

Seq(d+1,b)

− − − − − − − → D′ then C′ + − → D′ Furthermore, the allocations differ by at most 4 changes. Recursively, for a given set of servers S, Seq(C ∪ Cnew) and Seq(C) differ by at most 4 changes per server.

Lionel Eyraud-Dubois (LaBRI-Cepage) 21/ 24

slide-33
SLIDE 33

Online considerations

A comparison

Aggressive Best Connection

On client arrival, connect with Best Connection. If no room, remove the client that yields the largest gain. On client departure, use the newly available bandwidth to reduce the indegree of other clients. If there are unconnected clients left, act like on client arrival.

On 80-server instances, with 500 events

On average, throughput lower by 6%, can be as low as 75% Maximal number of changes for one event can reach 130 for one server Average number of maximal changes is 3.5 for Seq, 1.6 for ABC

Lionel Eyraud-Dubois (LaBRI-Cepage) 22/ 24

slide-34
SLIDE 34

Conclusions

Outline

1

Introduction

2

Independent tasks distribution

3

Online considerations

4

Conclusions

Lionel Eyraud-Dubois (LaBRI-Cepage) 23/ 24

slide-35
SLIDE 35

Conclusions

Summary

Divisible Tasks, Multi-Port version Propose Seq, a guaranteed approximation algorithm Analysed an online setting

Future Works

Broadcast – Streaming problem in the same model “P2P” setting: allow clients to forward messages Online algorithm with fewer total number of changes

Lionel Eyraud-Dubois (LaBRI-Cepage) 24/ 24