Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Scheduling Crossbar Switches Who do we chose to traverse the switch in the next time slot? N N 11.

Similar presentations


Presentation on theme: "1 Scheduling Crossbar Switches Who do we chose to traverse the switch in the next time slot? N N 11."— Presentation transcript:

1 1 Scheduling Crossbar Switches Who do we chose to traverse the switch in the next time slot? N N 11

2 2 History 1. [Karol et al. 1987] Throughput limited to by head- of-line blocking for Bernoulli IID uniform traffic. 2. [Tamir 1989] Observed that with “Virtual Output Queues” (VOQs) Head-of-Line blocking is reduced and throughput goes up.

3 3 Basic Switch Model A 1 (n) S(n) N N L NN (n) A 1N (n) A 11 (n) L 11 (n) 11 A N (n) A NN (n) A N1 (n) D 1 (n) D N (n)

4 4 Some definitions 3. Queue occupancies: Occupancy L 11 (n) L NN (n)

5 5 Finding a maximum size match  How do we find the maximum size (weight) match? A B C D E F 1 2 3 4 5 6

6 6 Network flows and bipartite matching Finding a maximum size bipartite matching is equivalent to solving a network flow problem with capacities and flows of size 1. A1 Source s Sink t B C D E F 2 3 4 5 6

7 7 Network Flows Source s Sink t ac bd 10 1 1 1 Let G = [V,E] be a directed graph with capacity cap(v,w) on edge [v,w]. A flow is an (integer) function, f, that is chosen for each edge so that We wish to maximize the flow allocation.

8 8 A maximum network flow example By inspection Source s Sink t ac bd 10 1 1 1 Step 1: Source s Sink t ac bd 10, 10 10 10, 10 1 1 1 10 10, 10 Flow is of size 10

9 9 A maximum network flow example Source s Sink t ac bd 10, 10 10, 1 10, 10 1 1 1, 1 10, 1 10, 10 Step 2: Flow is of size 10+1 = 11 Source s Sink t ac bd 10, 10 10, 2 10, 9 1,1 10, 2 10, 10 Maximum flow: Flow is of size 10+2 = 12 Not obvious

10 10 Ford-Fulkerson method of augmenting paths 1. Set f(v,w) = -f(w,v) on all edges. 2. Define a Residual Graph, R, in which res(v,w) = cap(v,w) – f(v,w) 3. Find paths from s to t for which there is positive residue. 4. Increase the flow along the paths to augment them by the minimum residue along the path. 5. Keep augmenting paths until there are no more to augment.

11 11 Example of Residual Graph st ac bd 10, 10 10 10, 10 1 1 1 10 10, 10 Flow is of size 10 t ac bd 10 1 1 1 s res(v,w) = cap(v,w) – f(v,w) Residual Graph, R Augmenting path

12 12 Example of Residual Graph st ac bd 10, 10 10, 1 10, 10 1 1 1, 1 10, 1 10, 10 Step 2: Flow is of size 10+1 = 11 st ac bd 10 1 1 1 1 1 Residual Graph 9 9

13 13 Complexity of network flow problems  In general, it is possible to find a solution by considering at most VE paths, by picking shortest augmenting path first.  There are many variations, such as picking most augmenting path first.  Best Algorithm based on work by Dinic.  Complexity: O(  n m)

14 14 Finding a maximum size match  How do we find the maximum size (weight) match? A B C D E F 1 2 3 4 5 6

15 15 Network flows and bipartite matching Finding a maximum size bipartite matching is equivalent to solving a network flow problem with capacities and flows of size 1. A1 Source s Sink t B C D E F 2 3 4 5 6

16 16 Network flows and bipartite matching Ford-Fulkerson method A1 s t B C D E F 2 3 4 5 6 Residual Graph for first three paths:

17 17 Network flows and bipartite matching A1 s t B C D E F 2 3 4 5 6 Residual Graph for next two paths:

18 18 Network flows and bipartite matching A1 s t B C D E F 2 3 4 5 6 Residual Graph for augmenting path:

19 19 Network flows and bipartite matching A1 s t B C D E F 2 3 4 5 6 Residual Graph for last augmenting path: Note that the path augments the match: no input and output is removed from the match during the augmenting step.

20 20 Network flows and bipartite matching A1 s t B C D E F 2 3 4 5 6 Maximum flow graph:

21 21 Network flows and bipartite matching A1 B C D E F 2 3 4 5 6 Maximum Size Matching:

22 22 Complexity of Maximum Matchings  Maximum Size Matchings:  Algorithm by Dinic (~1970) O(n 1/2 m)  Maximum Weight Matchings (assignment problem)  Algorithm by Kuhn (1955) O(N 3 )  In general:  Hard to implement in hardware  Slooooow.

23 23 Another algorithm: Longest Port First (LPF)

24 24 LPF

25 25 Properties of LPF  LPF is stable for all admissible Bernoulli traffic.  An LPF match is a maximum size match.  How can this be stable?


Download ppt "1 Scheduling Crossbar Switches Who do we chose to traverse the switch in the next time slot? N N 11."

Similar presentations


Ads by Google