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

a deterministic fault tolerant and deadlock free routing
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 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

slide-2
SLIDE 2

Table of Contents

1.

Introduction

2.

Preliminaries and Related Work

3.

Extended X-Y Routing

4.

Orthogonal Faulty Blocks

5.

Extensions

6.

Conclusions

slide-3
SLIDE 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.

slide-4
SLIDE 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

slide-5
SLIDE 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

slide-6
SLIDE 6

Table of Contents

1.

Introduction

2.

Preliminaries and Related Work

3.

Extended X-Y Routing

4.

Orthogonal Faulty Blocks

5.

Extensions

6.

Conclusions

slide-7
SLIDE 7

2-D Meshes and Faulty Block

slide-8
SLIDE 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

  • r faulty neighbors in different dimensions.

A faulty block consists of connected unsafe and faulty

nodes.

The convexity of faulty blocks facilitates a simple design

  • f deadlock-free routing.
slide-9
SLIDE 9

Wormhole Protocols

A message is divided into packets A packet is divided into flits Flits are routed through the network in pipeline

fashion

slide-10
SLIDE 10

Deadlock in Routing

slide-11
SLIDE 11

VC & VN

VC (Dally,1987) and VN (Linda and

Harden,1991)

Escape channel (Duato, 1995)

slide-12
SLIDE 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

slide-13
SLIDE 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

slide-14
SLIDE 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

slide-15
SLIDE 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

slide-16
SLIDE 16

Table of Contents

1.

Introduction

2.

Preliminaries and Related Work

3.

Extended X-Y Routing

4.

Orthogonal Faulty Blocks

5.

Extensions

6.

Conclusions

slide-17
SLIDE 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-)

slide-18
SLIDE 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”

slide-19
SLIDE 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.

slide-20
SLIDE 20

Extended Faulty Blocks (cont.)

slide-21
SLIDE 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

slide-22
SLIDE 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

slide-23
SLIDE 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.

slide-24
SLIDE 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.

slide-25
SLIDE 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.

slide-26
SLIDE 26

Routing Example

slide-27
SLIDE 27

Two Special Cases:

slide-28
SLIDE 28

Table of Contents

1.

Introduction

2.

Preliminaries and Related Work

3.

Extended X-Y Routing

4.

Orthogonal Faulty Blocks

5.

Extensions

6.

Conclusions

slide-29
SLIDE 29

Orthogonal Faulty Blocks (OFB’s)

A region is orthogonal convex iff

For any horizontal or vertical line, if two nodes

  • n the line are inside the region, then all the

nodes on the line that are between these two nodes are also inside the region

slide-30
SLIDE 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

slide-31
SLIDE 31

OFB’s (cont.)

slide-32
SLIDE 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

  • f 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.

slide-33
SLIDE 33

EOFB’s (cont.)

slide-34
SLIDE 34

Routing Example

Routing along orthogonal faulty blocks

slide-35
SLIDE 35

Comparisons

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

slide-36
SLIDE 36

Table of Contents

1.

Introduction

2.

Preliminaries and Related Work

3.

Extended X-Y Routing

4.

Orthogonal Faulty Blocks

5.

Extensions

6.

Conclusions

slide-37
SLIDE 37

Extensions

Partial adaptive routing

EW-routing (extended X-Y routing) WE-routing (restricted zig-zag routing)

slide-38
SLIDE 38

Extensions (cont.)

Traffic- and adaptivity-balanced routing

using VC’s and VN’s

slide-39
SLIDE 39

Extensions (cont.)

Extended Rule: same as the original one

except the role of even and odd is exchanged.

slide-40
SLIDE 40

Extensions (cont.)

Removing constraints:

Removing assumption (2): the destination is not a

boundary node of any faulty block

E O

slide-41
SLIDE 41

Extensions (cont.)

The destination is an unsafe but enabled

node

slide-42
SLIDE 42

Table of Contents

1.

Introduction

2.

Preliminaries and Related Work

3.

Extended X-Y Routing

4.

Orthogonal Faulty Blocks

5.

Extensions

6.

Conclusions

slide-43
SLIDE 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