Outline

29
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

Page 1: Outline

1

Outline

Why Maximal and not Maximum Definition and properties of Maximal

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

Page 2: Outline

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

Page 3: Outline

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.

Page 4: Outline

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

Page 5: Outline

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.

Page 6: Outline

6

Outline

Definition and properties of Maximal Match

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

Page 7: Outline

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

:

Page 8: Outline

8

Parallel Iterative MatchingConvergence Time

E C Nlog

E U i N2

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

N # of ports =

U i # 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 k(1-k/n) are unresolved n/4

Page 9: Outline

9

16x16 switch

Parallel Iterative Matching

Page 10: Outline

10

Parallel Iterative Matching

PIM with a single iteration

Page 11: Outline

11

Parallel Iterative Matching

PIM with 4 iterations

Page 12: Outline

12

PIM Fairness Problems:(under inadmissible load )

1

1

21

1211

4/3

4/3

4/1

21

12

11

Page 13: Outline

13

Outline

Definition and properties of Maximal Match

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

Page 14: Outline

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

Page 15: Outline

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.

Page 16: Outline

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.

Page 17: Outline

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

Page 18: Outline

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

Page 19: Outline

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

Page 20: Outline

20

16x16 switch

iSLIP

Page 21: Outline

21

iSLIP

Page 22: Outline

iSLIP Match Size

22

Page 23: Outline

23

iSLIPImplementation

Grant

Grant

Grant

Accept

Accept

Accept

1

2

N

1

2

N

State

N

N

N

Decision

log2N

log2N

log2N

ProgrammablePriority Encoder

Page 24: Outline

24

iSLIP Variations

L priority levels replace each pointer by L pointers

threshold SLIP

Weighted SLIP

Page 25: Outline

25

Outline

Definition and properties of Maximal Match

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

Page 26: Outline

26

Wave Front Arbiter(Tamir)

Requests Match

1

2

3

4

1

2

3

4

1

2

3

4

1

2

3

4

Page 27: Outline

27

Wave Front Arbiter

Requests Match

Page 28: Outline

28

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

Page 29: Outline

29

Wave Front ArbiterWrapped WFA (WWFA)

Requests Match

N steps instead of2N-1