1 / 31

Parallel Routing

Parallel Routing. Bruce, Chiu-Wing Sham. Overview. Background Routing in parallel computers Routing in hypercube network Bit-fixing routing algorithm Randomized routing algorithm. Parallel Computer Architectures.

Download Presentation

Parallel Routing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Parallel Routing Bruce, Chiu-Wing Sham

  2. Overview • Background • Routing in parallel computers • Routing in hypercube network • Bit-fixing routing algorithm • Randomized routing algorithm

  3. Parallel Computer Architectures • Parallel computers consist of multiple processing elements interconnected by a specific interconnection topology • Example: • linear array • hypercube • mesh • fat tree

  4. Interconnection Topologies

  5. Routing in Parallel Computers • Parallel computers are modeled by directed graphs • All interconnections between processors (nodes) occur in synchronous steps • Each link can carry at most one unit message (packet) in one step • During a step, a node can send at most one packet to each of its neighbors • Each node is uniquely identified by a number between 1 and N

  6. Permutation Routing Problem • A network of N nodes, {1, …, N} • Each node i contains one packet vi that should be routed to the destination node • Each destination node d(i) for each node i, for 1  i N, should form a permutation of {1, …, N}, i.e.,every node is the destination of exactly one packet

  7. Oblivious Routing Algorithm • Properties: • A route between each node i and each destination node d(i) is specified • The route between the node i and the node d(i) depends on i and d(i) only

  8. Theorem 1: • For any deterministic oblivious permutation routing algorithm on a network of N nodes each of degree d, there is an instance of permutation routing requiring ( ) steps • Proof: • Paper: C. Kaklamanis, D. Krizanc, T. Tsantilas, “Tight Bounds for Oblivious Routing in the Hypercube”, Pro. of ACM symp. on Parallel alg. & architectures, 1990 Oblivious Routing Algorithm

  9. Hypercube Topology

  10. Hypercube Network • An n-dimensional hypercube network: • Number of nodes: N = 2n • Degree: n • The node i with address (i1, i2, …, in)  {0, 1}n and the node j with address (j1, j2, …, jn)  {0, 1}n are connected if the hamming distance between (i1, i2, …, in) and (j1, j2, …, jn) is 1

  11. Bit-Fixing Routing Algorithm • Algorithm: • Given a destination address d(i) and an intermediate node (i) • Compare the bits of d(i) with (i) from left to right • Identify the first bit position at which these two addresses differ • Route this packet to its neighbor n(i) such that (i) and n(i) differ only in this bit position

  12. Bit-Fixing Routing Algorithm • Example: • Source: (0, 0, 0, 0, 0, 0) • Destination: (1, 0, 1, 0, 1, 1) • (0, 0, 0, 0, 0, 0)  (1, 0, 0, 0, 0, 0)  (1, 0, 1, 0, 0, 0)  (1, 0, 1, 0, 1, 0)  (1, 0, 1, 0, 1, 1)

  13. Corollary 1: • On an n-dimensional hypercube, there is an instance (e.g. transpose permutation) of permutation routing requiring ( ) steps for the bit-fixing routing algorithm • It satisfies Theorem 1 where N = 2n and d = n Bit-Fixing Routing Algorithm

  14. Bit-Fixing Routing Algorithm • Proof: • Let (i.j) be the address of a node, where i and j are two binary strings each of length n/2 and . is the string concatenation operation • Consider the packet stored on node (i.j) is routed to the destination node (j.i) (transpose permutation) and look at the sources where j = 0 only

  15. Bit-Fixing Routing Algorithm • Proof: • i.0  0.i • if i is odd, the packet must pass through node (1.0) • No. of nodes = 2n/2/2 • Only one packet can be routed on the same edge at a time • Lower bound = 2n/2/2

  16. Randomized Routing Algorithm • For i = 1 to N • Route a packet vi by executing the following two steps independently of all the other packets • Choose a random intermediate destination tifrom {1, …, N}, and route vi from i to ti using bit-fixing algorithm • Route vi from ti to its final destination d(i) using bit-fixing algorithm • Queuing: FIFO (delay occurs)

  17. Randomized Routing Algorithm • Lemma 1: • If the bit-fixing algorithm is used to route a packet vi from i to ti and vj from j to tj then their routes do not rejoin after they separate

  18. Randomized Routing Algorithm • Proof (lemma 1): • Assume k is the node at which the two paths separate and l is the node at which they rejoin • According to bit-fixing scheme, vi and vj from k to l depends only on the bit representations of k and l • vi and vj must follow the same route • Contradict to the assumption

  19. Randomized Routing Algorithm • Let the route of packet vi follow the sequence of edges pi = (e1, e2, …, ek) • Let S be the set of packets (other than vi) whose routes pass through at least one of {e1, e2, …, ek} • Lemma 2: • The delay incurred by viis at most |S|

  20. Randomized Routing Algorithm • Proof (lemma 2): • Define lag l for any packet w, l=t – j (a packet is ready to follow edge ejat time t • If the lag of vi increase from l to l + 1, some packet should have lag l in front of vi

  21. Randomized Routing Algorithm • Proof (lemma 2): • Let tj be the last time step at which any packet in S has lag l • A packet w must follow the edge ejwhere l= tj – j and it must leave at tj+1.

  22. Randomized Routing Algorithm • Proof (lemma 2): • If the lag of vi reaches l + 1, some packet in S leaves pi with lag l • By lemma 1, the routes of different packets will not rejoin after separate • Each member of S whose route intersects pi is charged at most one delay for vi

  23. Randomized Routing Algorithm • Define a random variable Hij as: • Let delayi be the total delay incurred by vi, then: • From linearity of expectation:

  24. Randomized Routing Algorithm • For an edge e of the hypercube, let the random variable T(e) be the number of routes that pass through e. If pi = (e1, …, ek), then: • We have:

  25. Randomized Routing Algorithm • All edges in the hypercube are symmetric • E[T(el)] = E[T(em)] for any two edges el and em • Total number of edges: Nn • The expected length of each route is n/2 • Expected length of total route is Nn/2 • E[T(e)] = 1/2 for all edges • We have:

  26. Theorem 2 (Chernoff bound): • Let X1, X2, …, Xn be the independent Poisson trials such that, for 1  i n, Pr[Xi = 1] = pi, where 0  pi 1. • X = • = E[X] = Randomized Routing Algorithm

  27. Randomized Routing Algorithm

  28. Randomized Routing Algorithm • We have: • By using: • Put = 11:

  29. Randomized Routing Algorithm • Theorem 3: • With probability at least 1-2-5n, the packet vi reaches ti in 7n or fewer steps • Proof: • Since the total number of packets is 2n, the probability that any of them have a delay exceeding 6n is less than 2n*2-6n = 2-5n • The packet requires addition n steps to route from the source to the destination

  30. Randomized Routing Algorithm • Theorem 4: • A packet reaches its destination in 14n or fewer steps with a probability larger than (1-1/N) • Proof: • Phase 2 of the Valiant’s scheme is identical to Phase 1 • Fail probability = 2*2-5n < 2-n = 1/N

  31. Conclusion • Oblivious routing algorithm may give very poor result at some specific cases • Randomized routing algorithm can give satisfactory result for all cases with high probability

More Related