a deterministic fault tolerant and deadlock free routing
play

A Deterministic Fault-Tolerant and Deadlock-Free Routing Protocol - PowerPoint PPT Presentation

A Deterministic Fault-Tolerant and Deadlock-Free Routing Protocol in 2-D Meshes Based on Odd-Even Turn Model Jie Wu Dept. of Computer Science and Engineering Florida Atlantic University Boca Raton, FL 33431 jie@cse.fau.edu Table of


  1. A Deterministic Fault-Tolerant and Deadlock-Free Routing Protocol in 2-D Meshes Based on Odd-Even Turn Model Jie Wu Dept. of Computer Science and Engineering Florida Atlantic University Boca Raton, FL 33431 jie@cse.fau.edu

  2. Table of Contents Introduction 1. Preliminaries and Related Work 2. Extended X-Y Routing 3. Orthogonal Faulty Blocks 4. Extensions 5. Conclusions 6.

  3. Introduction � The performance of a direct network (such as 2-D meshes) depends on the efficiency of routing algorithm . � Designing a deterministic routing protocol that is both fault-tolerant and deadlock-free poses a major challenge.

  4. Routing Protocols � Deterministic vs. adaptive � Dimension-order routing (X-Y routing) � X-Y routing is not fault-tolerant and it cannot tolerate even a single fault

  5. Contributions � Extended X-Y routing in 2-D meshes � A novel fault model: orthogonal faulty block � Fault-tolerant and deadlock-free routing without Virtual channels (VC’s) (with constraints on fault, source, and destination distribution) � Routing without certain constraints using VC’s and virtual networks (VN’s) � Extensions to partial adaptive routing, traffic- and adaptivity-balanced routing using VN’s

  6. Table of Contents Introduction 1. Preliminaries and Related Work 2. Extended X-Y Routing 3. Orthogonal Faulty Blocks 4. Extensions 5. Conclusions 6.

  7. 2-D Meshes and Faulty Block

  8. 2-D Meshes and Faulty Block (cont’d) � All non-faulty nodes are safe initially. � A non-faulty node is changed to unsafe if it has two unsafe or faulty neighbors in different dimensions. � A faulty block consists of connected unsafe and faulty nodes. � The convexity of faulty blocks facilitates a simple design of deadlock-free routing.

  9. Wormhole Protocols � A message is divided into packets � A packet is divided into flits � Flits are routed through the network in pipeline fashion

  10. Deadlock in Routing

  11. VC & VN � VC (Dally,1987) and VN (Linda and Harden,1991) � Escape channel (Duato, 1995)

  12. Deadlock-Free Routing � No deadlock-free routing can tolerate unlimited number of faults without using VC’s � All existing deadlock-free routing protocol require 2 or 3 VC’s

  13. Turn Model (Ni and Glass,1992) � Deadlock avoidance (avoid a cycle) � Four turns are disallowed in X-Y routing: two in a clockwise cycle and two in a counter-clockwise cycle � Two turns are disallowed in the Turn model: one in a clockwise cycle and one in a counter-clockwise cycle

  14. Odd-Even Turn Model (Chiu,2000) � Prevent the formation of the rightmost column segment of a cycle � Once east-bound starts, no more west-bound is allowed in the routing process

  15. Rules in Even-Odd Turn Model � Any packet is not allowed to take an EN or ES turn at any node located in an even column, and it is not allowed take an NW or SW turn at any node located in an odd column

  16. Table of Contents Introduction 1. Preliminaries and Related Work 2. Extended X-Y Routing 3. Orthogonal Faulty Blocks 4. Extensions 5. Conclusions 6.

  17. Assumptions � Node fault only � Static fault model � Source and destination outside faulty blocks � The destination is not a boundary node of any faulty block � No fault at the edge of a mesh � The 2-D mesh is connected � Four directions: North (X+), South (X-), East (Y+), and West (Y-)

  18. Localized Algorithm � Each processor (process) interacts with others in a restricted vicinity, but collectively achieves a desired global objective � Each processor (process) performs exceedingly simple task such as maintaining and propagating information “marker”

  19. Extended Faulty Blocks (EFB’s) � Distance between two EFB’s: � 2 (North and South) and 3 (East and West) � All nonfaulty nodes are safe initially. � A nonfaulty node is changed to unsafe if � it has two unsafe or faulty neighbors that are not all in the x dimension; or � it has an unsafe or faulty neighbor in the x dimension and an unsafe or faulty 2-hop neighbor (neighbor's neighbor) in the y dimension.

  20. Extended Faulty Blocks (cont.)

  21. Extended X-Y Routing � In phase 1, the offset along the x dimension is reduced to zero � In phase 2, the offset along the y dimension is reduced to zero � Two modes: “normal” and “abnormal” � Extended faulty blocks

  22. Extended X-Y Routing (cont.) � Two cases of routing in phases 1 and 2 � The extended X-Y routing in deadlock-free and livelock-free

  23. Extended X-Y Routing (cont.) � Extended X-Y routing: /* the packet is sent to an even column */ � If the source is in an odd column and ∆ x is non- zero,then the packet is sent to its west neighbor in an even column.

  24. Extended X-Y Routing (cont.) � phase 1: reduce ∆ x � (Normal mode) reduce ∆ x to zero by sending the packet north (or south) (with no 180 degree turn). � (Abnormal mode) when a north-bound (south-bound) packet reaches a boundary node of a faulty block, it is routed around the block clockwise (counter-clockwise) by following the boundary ring of the faulty block. The packet takes the first even column turn whenever possible and step (a) is followed.

  25. Extended X-Y Routing (cont.) � phase 2: reduce ∆ y � Once ∆ x is reduced to zero, an NW or NE turn is performed for the north-bound packet and a SW or SE turn is performed for a south-bound packet . The selection of a turn depends on the relative location of the destination to the current node. � (Normal) reduce ∆ y to zero by sending the packet east (west) (with no 180 degree turn). � (Abnormal) when a east-bound (west-bound) packet reaches a boundary node of a faulty block, it is routed around the block, clockwise or counterclockwise. � Routing around the block is completed when ∆ x is again reduced to zero and normal mode is followed.

  26. Routing Example

  27. Two Special Cases:

  28. Table of Contents Introduction 1. Preliminaries and Related Work 2. Extended X-Y Routing 3. Orthogonal Faulty Blocks 4. Extensions 5. Conclusions 6.

  29. Orthogonal Faulty Blocks (OFB’s) � A region is orthogonal convex iff � For any horizontal or vertical line, if two nodes on the line are inside the region, then all the nodes on the line that are between these two nodes are also inside the region

  30. OFB’s (cont.) � Nonfaulty nodes are marked safe/unsafe in faulty blocks � All safe nodes are marked enabled � An unsafe node is initially marked disabled � An disabled node is changed to the enabled status if it has two or more enabled neighbors

  31. OFB’s (cont.)

  32. Extended Orthogonal Faulty Blocks (EOFB’s) � Unsafe nodes can be remarked in the following sequence: � An unsafe node is remarked semi-faulty if it has a faulty south or north neighbor. � An unsafe or semi-faulty node is remarked disabled if the status of its east and west neighbors belong to one of the following three cases: faulty and semi-faulty, semi-faulty and faulty,or faulty and faulty, respectively. � An unsafe or semi-faulty is remarked enabled if it has two or more enabled neighbors .

  33. EOFB’s (cont.)

  34. Routing Example � Routing along orthogonal faulty blocks

  35. Comparisons The number of nodes covered in (a) FBs and extended FBs and (b) OFBs and extended OFBs

  36. Table of Contents Introduction 1. Preliminaries and Related Work 2. Extended X-Y Routing 3. Orthogonal Faulty Blocks 4. Extensions 5. Conclusions 6.

  37. Extensions � Partial adaptive routing � EW-routing (extended X-Y routing) � WE-routing (restricted zig-zag routing)

  38. Extensions (cont.) � Traffic- and adaptivity-balanced routing using VC’s and VN’s

  39. Extensions (cont.) � Extended Rule: same as the original one except the role of even and odd is exchanged.

  40. Extensions (cont.) � Removing constraints: � Removing assumption (2): the destination is not a boundary node of any faulty block E O

  41. Extensions (cont.) � The destination is an unsafe but enabled node

  42. Table of Contents Introduction 1. Preliminaries and Related Work 2. Extended X-Y Routing 3. Orthogonal Faulty Blocks 4. Extensions 5. Conclusions 6.

  43. Conclusions � A simple and efficient deterministic fault-tolerant and deadlock-free routing in 2-D meshes without VC’s � The approach can be applied to 2-D meshes with any convex type of faulty blocks with simple modification � The use of localized algorithms to construct rectangular faulty blocks and its extensions � Future work: extensions to higher dimensional meshes and 2-D tori

Recommend


More recommend