Outline

28
1 Outline Why Maximal and not Maximum Definition and properties of Maximal Match Parallel Iterative Matching (PIM) iSLIP Wavefront Arbiter (WFA)

description

Outline. Why Maximal and not Maximum Definition and properties of Maximal Match Parallel Iterative Matching (PIM) i SLIP Wavefront Arbiter (WFA). Why doesn’t maximizing instantaneous throughput give 100% throughput for non-uniform traffic?. Three possible matches, S (n):. - PowerPoint PPT Presentation

Transcript of Outline

1

Outline

Why Maximal and not Maximum Definition and properties of Maximal

Match Parallel Iterative Matching (PIM) iSLIP Wavefront Arbiter (WFA)

2

Why doesn’t maximizing instantaneous throughput give 100% throughput for non-

uniform traffic?

2/1

2/1

2/1

32

21

1211Three possiblematches, S(n):

100%). t(throughpu stable not is switch 0.0358 if so And

But

most at is served is 1 input which at rate total The

. w.p. serviced is 1 Input ) w.p.( arrivals have

both and and , time at that Assume

.)21(31121

.)21(311

)21(11)21(32

32)21(

)()(0)(0)(

21

2

22

2

32211211

-δ// - -λ

//

/-//

/-δ/

nQnQ n, L nn, L

3

Maximal Matching

A maximal matching is one in which each edge is added one at a time, and is not later removed from the matching.

i.e. no augmenting paths allowed (they remove edges added earlier).

No input and output are left unnecessarily idle.

4

Example of Maximal Size Matching

A 1

B

C

D

E

F

2

3

4

5

6

A 1

B

C

D

E

F

2

3

4

5

6

Maximal Size Matching

Maximum Size Matching

A

B

C

D

E

F

1

2

3

4

5

6

5

Maximal Matchings

In general, maximal matching is simpler to implement, and has a faster running time.

A maximal size matching is at least half the size of a maximum size matching.

A maximal weight matching is defined in the obvious way.

A maximal weight matching is at least half the weight of a maximum weight matching.

6

Outline

Definition and properties of Maximal Match

Parallel Iterative Matching (PIM) iSLIP Wavefront Arbiter (WFA)

7

Parallel Iterative Matching

1

2

3

4

1

2

3

4

1

2

3

4

1

2

3

4

1: Requests

1

2

3

4

1

2

3

42: Grant

1

2

3

4

1

2

3

43: Accept/Match

uar selection

1

2

3

4

1

2

3

4

uar selection

1

2

3

4

1

2

3

4

#1

#2

Itera

tion

:

8

Parallel Iterative MatchingConvergence Time

E C Nlog

E Ui N2

4i------- C # of iterations required to resolve connections=

N # of ports =

Ui # of unresolved connections after iteration i=

Number of iterations to converge:

Number of iterations to converge:

Q

k inputs with no other grant

n-k inputs with grants from others

with prob. 1 all n inputs are resolved

A. grant is accepted – all are resolvedB. grant rejected – n-k are resolved

At most (n-k)(1-k/n) are unresolved n/4

9

Parallel Iterative Matching

10

Parallel Iterative Matching

PIM with a single iteration

11

Parallel Iterative Matching

PIM with 4 iterations

12

PIM Fairness Problems:(under inadmissible load )

1

1

21

1211

4/3

4/3

4/1

21

12

11

13

Outline

Definition and properties of Maximal Match

Parallel Iterative Matching (PIM) iSLIP Wavefront Arbiter (WFA)

14

iSLIP

1

2

3

4

1

2

3

4

1

2

3

4

1

2

3

4

1: Requests

1

2

3

4

1

2

3

42: Grant

1

2

3

4

1

2

3

43: Accept/Match

1

2

3

4

1

2

3

4

#1

#2

Round-Robin Selection

1

2

3

4

1

2

3

4

Round-Robin Selection

15

SLIP vs. Round Robin

1. Request: each input send a request to every output i, |VOQi|>0

2. Grant: chose a request next in RR order and advance pointer beyond it.

3. Accept:chose the among the grants the one after the pointer and advance the pointer beyond.

16

SLIP vs. Round Robin

1. Request: each input send a request to every output i, |VOQi|>0

2. Grant: chose a request next in RR order and advance pointer beyond it if accepted.

3. Accept:chose the among the grants the one after the pointer and advance the pointer beyond.

17

iSLIP vs. Round Robin

1. Request: each input send a request to every output i, |VOQi|>0

2. Grant: chose a request next in RR order and advance pointer beyond it if accepted.

3. Accept:chose the among the grants the one after the pointer and advance the pointer beyond only if matched in 1st iteration.

in 1st iteration

18

why update pointers only in the 1st round?

assume all pointers point at 1.

time 1: 1st: 1-1 is matched 2nd: 2-2 is matched

time 2 1st: 1-3 & 3-2 are

matched

time 3: 1st: 1-1 is matched 2nd: 2-2 is matched

1

3

2 2

3

1

19

iSLIPProperties

Random under low load TDM under high load Lowest priority to MRU 1 iteration: fair to outputs Converges in at most N iterations. On

average < log2N Implementation: N priority encoders Up to 100% throughput for uniform i.i.d.

traffic

20

iSLIP

21

iSLIP

22

iSLIPImplementation

Grant

Grant

Grant

Accept

Accept

Accept

1

2

N

1

2

N

State

N

N

N

Decision

log2N

log2N

log2N

ProgrammablePriority Encoder

23

iSLIP Variations

L priority levels replace each pointer by L pointers

threshold SLIP

Weighted SLIP

24

Outline

Definition and properties of Maximal Match

Parallel Iterative Matching (PIM) iSLIP Wavefront Arbiter (WFA)

25

Wave Front Arbiter(Tamir)

Requests Match

1

2

3

4

1

2

3

4

1

2

3

4

1

2

3

4

26

Wave Front Arbiter

Requests Match

27

Wave Front ArbiterImplementation

1,1 1,2 1,3 1,4

2,1 2,2 2,3 2,4

3,1 3,2 3,3 3,4

4,1 4,2 4,3 4,4

Simple combinational logic blocks

28

Wave Front ArbiterWrapped WFA (WWFA)

Requests Match

N steps instead of2N-1