• 沒有找到結果。

Adaptive and fault-tolerant routing with 100% node utilization for mesh multicomputer

N/A
N/A
Protected

Academic year: 2021

Share "Adaptive and fault-tolerant routing with 100% node utilization for mesh multicomputer"

Copied!
8
0
0

加載中.... (立即查看全文)

全文

(1)

Adaptive and Fault-Tolerant Routing

with 100% Node Utilization for Mesh Multicomputer

Sheng-De Wang



and Ming-Jer Tsai

Department of Electrical Engineering, National Taiwan University,

Taipei 106, TAIWAN

Abstract

In this paper, we propose an adaptive and deadlock-free routing algorithm to tolerate irregular faulty patterns using two virtual channels per physical link. It can improve the node utilization up to 100%. When a node becomes faulty or recovered, the central control unit constructs a directed path graph which is used for generating the intermediate nodes of the message path. Thus a message can be trans-mitted from sources or to destinations within faulty blocks via a set of “intermediate nodes”. Our method requires the global failure information if the central control unit is not available.

1. Introduction

Message routing achieves inter-node communication in large-scale parallel computers. In a concurrent multicom-puter, wormhole switching [9] is widely used; however, it suffers the deadlock problem when not well-designed in a fault environment. Thus, a reliable routing algorithm is sup-posed to be deadlock-free and fault-tolerant.

Glass and Ni [6] have proposed a partially-adaptive rout-ing algorithm to tolerate

n

,1faults in an

n

-dimensional

mesh based on the turn model. In an

N



N

2-dimensional

mesh, Cunningham and Avresky [4] can improve the per-formance and provide fault tolerance for up to

N

,1faults.

Besides, Hadas and Brandt [7] have proposed an original-based routing algorithm to tolerate square faulty blocks. When a fault arises, their method has a hot-spot effect and will non-minimally route a message even if the message does not encounter any square faulty block.

Moreover, Linder and Harden [8] have proposed a fully-adaptive and fault-tolerant routing algorithm based on the concept of virtual interconnection networks. However, it re-quires exponential number of virtual channels per physical link and tolerates small number of faults. Dally and Aoki



Corresponding author. E-mail: [email protected].

[5] have proposed a dynamic algorithm to remove cycles from packet wait-for graph instead of channel dependency graphs. Thereby, the virtual channel utilization can be con-siderably improved. In their algorithm, the number of faults tolerated and virtual channels used depends on the location of faults.

Using three virtual channels per physical link, Chien and Kim [3] have proposed a planar-adaptive routing algorithm to tolerate disconnected faulty blocks with distance of no less than two in at least one dimension. Using extra four virtual channels per physical link, Boppana and Chalasani [1] can enhance a fully-adaptive algorithm to tolerate dis-connected faulty blocks with distance of no less than two in at least one dimension. Using three virtual channels per physical link, the algorithm [2] presented by Boura and Das provides full-adaptivity and fault-tolerance. It can tolerate disconnected faulty blocks with distance of at least three.

In addition, Su and Shin [10] have proposed an adap-tive routing algorithm to tolerate disconnected faulty blocks with distance of three or more in at least one dimension using only two virtual channels per physical link which is so far the smallest. However, their algorithm can possibly reach a deadlock and has been improved to tolerate discon-nected faulty blocks with distance of no less than two in at least one dimension [11].

As was stated above, many adaptive routing algorithms [1, 3, 10] are designed to tolerate a large number of faults by introducing rectangular faulty blocks. Thus, some good nodes are regarded as faulty ones and are prohibited from interchanging messages with the other good nodes. It im-plies that the node utilization may drastically degrade when the faulty nodes densely distribute in certain particular pat-terns. In this paper, using two virtual channels per physical link, we develop an adaptive and deadlock-free routing al-gorithm, by which two good nodes can communicate with each other if there is at least one path between them. No-tation used in this paper are summarized in Table 1, where two nodes are connected if there is a link between them, and two sets

S

i

and

S

j

are connected if there is a node

A

2

S

i

(2)

Table 1. Summary of Notation

V IN

i

the virtual interconnection network

i

(

i

= 1

;

2).

V C

i;j

the virtual channel in dimension

i

of

V IN

j

.

num

(

V C

i;j

) the channel number of virtual channel

V C

i;j

.

N

S

the source node.

N

D

the destination node.

N

C

the current node.

N

I

the intermediate node.

N

R

the node receives the message from an in-termediate node.

B

i

the faulty block

i

.

M

0 the interconnection network outside all

faulty blocks.

M

i

the sub-mesh

i

(

i >

0) contained in a

faulty block.

S

,1 a set consists of faulty nodes.

S

i

a set consists of good nodes in

M

i

(

i

0).

V

i

vertex

i

in the directed path graph.

G

i;j

a set consists of the entry (

w

i

;dim;dir

),

where

w

i

2

S

i

is an intermediate node to

enter

S

j

(

S

i

and

S

j

are connected) for the message with header in

M

i

, and the mes-sage is routed to

w

i

via

V IN

dir

if

S

i

6=

S

0,

then is routed out from

w

i

via

V C

dim;dir

.

T

i;j

a set consists of the entry (

w

i

;dim;dir

),

where

w

i

2

S

i

is an intermediate node to

reach

N

D

2

S

j

(

S

i

may or may not

con-nect to

S

j

) for the message with header in

M

i

, and the message is routed to

w

i

via

V IN

dir

if

S

i

6=

S

0, then is routed out from

w

i

via

V C

dim;dir

.

nodes.

The rest of this paper is organized as follows. In the next section, we first present a method to construct the directed path graph which is used to generate the intermediate node of the message path. In section 3, we propose an adap-tive and deadlock-free routing algorithm to tolerate irregu-lar faulty patterns using two virtual channels per physical link. In section 4, we conclude this paper.

2. Construct the directed path graph

In this section, algorithm 2.1 is presented to construct the directed path graph which is used to generate the message path in the next section. Before describing it, Definitions 1 and 2 are needed.

Definition 1 (Safe/Unsafe Node) For an

n

-dimensional mesh, a good node is called an unsafe node if it connects to at least two faulty/unsafe nodes, and is called a safe node otherwise.

Definition 2 (Ancestor, Common Ancestor, Least Com-mon Ancestor) In the directed path graph, if there is a

directed path from vertex

A

to vertex

B

, then vertex

A

is called an ancestor of vertex

B

. If vertex

A

is an ancestor of both vertices

B

and

C

, then vertex

A

is called the com-mon ancestor of vertices

B

and

C

. For two vertices

B

and

C

, common ancestor

A

is called the least common ances-tor if no other common ancesances-tor is located in each directed shortest path from vertex

A

to vertex

B

and in each directed shortest path from vertex

A

to vertex

C

.

Algorithm 2.1 /* When a node becomes faulty or

recov-ered, algorithm 2.1 is executed by the central control unit. And, the central control unit will send

T

i;

to all

nodes in

S

i

after algorithm 2.1 is completed. */

1 Let the directed path graph be an empty graph. 2 Add vertex

V

0to the directed path graph and set

x

to

1.

3 For all faulty blocks

B

1to

B

p

do /* construct the directed

path graph, and compute

G

k;j

and

G

j;k

for each di-rected edge(

V

k

;V

j

). */

3.1 Find sub-meshes

M

x

;M

x

+1

;



;M

x

+

q

,1 in

B

i

such that

(1) Each good node in

B

i

belongs to exactly one

M

j

(

x



j



x

+

q

,1).

(2) For each

M

j

(

x



j



x

+

q

,1), the number

of faulty nodes in

M

j

is less than the dimen-sion of

M

j

.

(3) For each

M

j

(

x



j



x

+

q

,1), there

ex-ists

M

0 =

M

a

1

;M

a

2

;



;M

a

b =

M

j

such

that (1)

S

a

cand

S

a

c+1are connected and (2)

a

c

< a

c

+1, where

M

a

2

;M

a

3

;



;M

a

b are all in

B

i

. 3.2 For

j

=

x

to

x

+

q

,1do

3.2.1 Add vertex

V

j

to the directed path graph.

3.2.2 For each

S

k

(0

k < j

)connected to

S

j

do

3.2.2.1 Add a directed edge(

V

k

;V

j

)to the

directed path graph.

3.2.2.2 Let

G

k;j

and

G

j;k

be empty sets.

3.2.2.3 For each pair of connected nodes

w

k

2

S

k

and

w

j

2

S

j

do

3.2.2.3.1

G

k;j

=

G

k;j

[(

w

k

;dim;

1).

(3)

/*

dim

denotes the directed dimension where the link from node

w

k

to node

w

j

is located. */

3.3

x

=

x

+

q

.

4 For

j

= 0to

x

,1do /* compute

T

j;k

for0 

j



x

,1

;

0 

k



x

,1, and

j

6=

k

, where

x

is the

number of vertices in the directed path graph. */

4.1 For

k

=0to

x

,1(

k

6=

j

)do

4.1.1 If vertex

V

k

is an ancestor of vertex

V

j

in the directed path graph, then

4.1.1.1

T

j;k

is set to;.

4.1.1.2 For each directed shortest path

P

up

from vertex

V

k

to vertex

V

j

do.

4.1.1.2.1 Let (

V

a

;V

j

) be a directed

edge in

P

up

. Then,

T

j;k

is set to

T

j;k

[

G

j;a

.

4.1.2 Else if vertex

V

j

is an ancestor of vertex

V

k

in the directed path graph, then

4.1.2.1

T

j;k

is set to;.

4.1.2.2 For each directed shortest path

P

down

from vertex

V

j

to vertex

V

k

do

4.1.2.2.1 Let (

V

j

;V

a

) be a directed

edge in

P

down

. Then,

T

j;k

is set to

T

j;k

[

G

j;a

.

4.1.3 Else if vertices

V

j

and

V

k

has no common ancestor in the directed path graph, then

T

j;k

is set to;.

4.1.4 Else

4.1.4.1

T

j;k

is set to;.

4.1.4.2 For each least common ancestor

V

lca

of vertices

V

j

and

V

k

do

4.1.4.2.1 For each directed shortest

path

P

up

from vertex

V

lca

to vertex

V

j

do

4.1.4.2.1.1 Let(

V

a

;V

j

)be a directed

edge in

P

up

. Then,

T

j;k

is set to

T

j;k

[

G

j;a

.2

An example is shown in Figure 1(a), where 36 faulty nodes spread over a2121mesh. Based on Definition 1,

three faulty blocks

B

1,

B

2, and

B

3are formed by the

deac-tivating method. After algorithm 2.1 is completed, we have

1

B

1finds sub-mesh

M

1,

B

2finds sub-mesh

M

2, and

B

3

finds sub-meshes

M

3and

M

4due to step 3.1.

2 The directed path graph is constructed as shown in

Fig-ure 1(b) due to step 3.2.1.

Table 2.

T

j;k

obtained for the injured mesh shown in Figure 1(a).

j

n

k

0 1 2 3 4 0 -

G

0

;

1

G

0

;

2

G

0

;

3

G

0

;

3 1

G

1

;

0 -

G

1

;

0

G

1

;

0

G

1

;

0 2

G

2

;

0

G

2

;

0 -

G

2

;

0

G

2

;

0 3

G

3

;

0

G

3

;

0

G

3

;

0 -

G

3

;

4 4

G

4

;

3

G

4

;

3

G

4

;

3

G

4

;

3

-3 For each directed edge (

V

k

;V

j

) in the directed path

graph,

G

k;j

and

G

j;k

is obtained due to step 3.2.2, where

G

0

;

1 = f((6,16),-1,1), ((7,16),-1,1), ((8,-16),-1,1), ((9,15),-0,1), ((9,14),-0,1), ((9,13),-0,1)g,

G

1

;

0 = f((6,15),1,2), ((7,15),1,2), ((8,15),1,2), ((8,15),0,2), ((8,14),0,2), ((8,13),0,2)g,

G

0

;

2 = f((11,10),-1,1), ((12,10),-1,1)g,

G

2

;

0 = f((11,9),1,2), ((12,9),1,2)g,

G

0

;

3 = f((3,8),-1,1)g,

G

3

;

0 = f((3,7),1,2)g,

G

3

;

4 = f((3,7),-1,1)g,

G

4

;

3 =f((3,6),1,2)g. 4

T

j;k

(0

j

4,0

k

4,

j

6=

k

) is obtained as shown

in Table 2 due to step 4, where

T

j;

0is set to

G

j;

0for 1 

j

 3and

T

4

;

3 is set to

G

4

;

3 due to step 4.1.1,

T

0

;k

is set to

G

0

;k

for 1 

k

 3and

T

3

;

4 is set to

G

3

;

4due to step 4.1.2,

T

j;k

(

j

6=

k

), excluding

T

3

;

4, is set to

G

j;

0for 1

j

3

;

1

k

4and

T

4

;k

is set to

G

4

;

3for

k

=1

;

2due to step 4.1.4.

Another example is shown in Figure 2(a), where 2 faulty blocks

B

1 and

B

2 form in

2121 injured mesh. After

algorithm 2.1 is completed, we have

1

B

1 finds sub-meshes

M

1



M

7, and

B

2 finds

sub-meshes

M

8 

M

9.

2 The directed path graph is constructed as shown in

Fig-ure 2(b).

3 For each directed edge (

V

k

;V

j

) in the directed path

graph,

G

k;j

and

G

j;k

is obtained.

4

T

j;k

(0 

j

 9,0 

k

 9) is obtained as shown in

Table 3.

In step 3.1, each faulty block

B

i

can find sub-meshes by a deterministic algorithm. Thus, our method requires the global failure information if the central control unit is not available.

(4)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 8 9 0 5 6 10 11 12 13 14 15 16 17 18 19 20 1 3 4 2 7 M3 M4 M2 M1 M0 : good node : faulty node 1 2 3 0 4 (b) -1 (a)

Figure 1. (a) shows a2121injured mesh, where3faulty blocks

B

1



B

3are formed by Definition 1,

and

M

0 

M

4 are decided after the completion of algorithm 2.1. (b) shows the directed path graph

(5)

Table 3.

T

j;k

obtained for the injured mesh shown in Figure 2(a). 0 1 2 3 4

j

n

k

5 6 7 8 9 -

G

0

;

1

G

0

;

2

G

0

;

1 [

G

0

;

2

G

0

;

4 0

G

0

;

2 [

G

0

;

4

G

0

;

6

G

0

;

7 ;

G

0

;

9

G

1

;

0 -

G

1

;

2

G

1

;

3

G

1

;

4 1

G

1

;

2 [

G

1

;

3 [

G

1

;

4

G

1

;

4

G

1

;

2 ;

G

1

;

0

G

2

;

0

G

2

;

1 -

G

2

;

3

G

2

;

0 [

G

2

;

1 2

G

2

;

5

G

2

;

0 [

G

2

;

1

G

2

;

7 ;

G

2

;

0

G

3

;

1 [

G

3

;

2

G

3

;

1

G

3

;

2 -

G

3

;

1 3

G

3

;

5

G

3

;

1

G

3

;

5 ;

G

3

;

1 [

G

3

;

2

G

4

;

0

G

4

;

1

G

4

;

0 [

G

4

;

1

G

4

;

1 -4

G

4

;

5

G

4

;

6

G

4

;

5 [

G

4

;

6 ;

G

4

;

0

G

5

;

2 [

G

5

;

4

G

5

;

2 [

G

5

;

3 [

G

5

;

4

G

5

;

2

G

5

;

3

G

5

;

4 5 -

G

5

;

4

G

5

;

7 ;

G

5

;

2 [

G

5

;

4

G

6

;

0

G

6

;

4

G

6

;

0 [

G

6

;

4

G

6

;

4

G

6

;

4 6

G

6

;

4 -

G

6

;

7 ;

G

6

;

0

G

7

;

0

G

7

;

2

G

7

;

2

G

7

;

5

G

7

;

5 [

G

7

;

6 7

G

7

;

5

G

7

;

6 -;

G

7

;

0 ; ; ; ; ; 8 ; ; ; - ;

G

9

;

0

G

9

;

0

G

9

;

0

G

9

;

0

G

9

;

0 9

G

9

;

0

G

9

;

0

G

9

;

0 ;

-3. Adaptive and fault-tolerant routing with

100% node utilization

In this section, algorithm 3.1 is proposed to route a mes-sage using two virtual channels per physical link. It uses Glass and Ni’s algorithm [6] to route the message inside a faulty block, and uses algorithm RRFB2 [11] to route the message outside a faulty block. It is capable of tolerating irregular faulty patterns by transmitting the message from sources or to destinations within faulty blocks via multi-ple “intermediate nodes”. In algorithm 3.1, the message header format is (

header:N

D

,

header:N

I

,

header:dim

,

header:dir

).

header:N

D

records the address of

N

D

,

header:N

I

records the address of

N

I

,

header:dim

records the directed dimension along which the message is routed out from

N

I

, and

header:dir

records the virtual intercon-nection network

V IN

header:dir

used to route the message from

N

C

to

N

R

if

N

C

2

=

S

0. To allow clearer exposition,

we assume

N

S

2

S

p

;N

C

2

S

q

;N

D

2

S

r

in algorithm 3.1.

Algorithm 3.1 /* Assume

N

S

2

S

p

;N

C

2

S

q

, and

N

D

2

S

r

. */

1 If

N

C

=

N

D

, then exit.

2 Else if

N

C

=

N

I

, then the message is routed via

V C

header:dim;header:dir

.

3 Else

3.1 If (

N

C

=

N

S

) or (

N

C

=

N

R

), then

Set Message Header.

3.2 If

S

q

=

S

r

, then

3.2.1 If

N

C

2

S

0, then route the message to

N

D

via

V IN

1 and

V IN

2 by an adaptive

deadlock-free routing algorithm in [10].

3.2.2 Else route the message to

N

D

via

V IN

header:dir

by an adaptive deadlock-free routing algorithm in [6].

3.3 Else

3.3.1 If

N

C

2

S

0, then route the message to

N

I

via

V IN

1 and

V IN

2 by an adaptive

deadlock-free routing algorithm in [10].

3.3.2 Else route the message to

N

I

via

V IN

header:dir

by an adaptive deadlock-free routing algorithm in [6].

Set Message Header 1 If(

N

C

=

N

S

)and (

T

p;r

= ;or

N

D

2

S

(6)

M0 M1 3 M M4 8 9 M2 M9 8 M8 M M M5 7 6 0 5 6 10 11 12 13 14 15 16 17 18 19 20 1 3 4 2 7 10 11 12 13 14 15 16 17 18 19 20 0 1 2 3 4 5 6 7 8 9 B C G I J K L M N D E F H A : message 1 : message 2 V0 V1 V2 V3 V4 V5 V6 V7 V9 V8 (a) (b)

Figure 2. (a) shows a2121injured mesh, where two messages 1 and 2 are routed by algorithm 3.1.

(b) shows the directed path graph constructed by algorithm 2.1.

2 Else if (

N

C

=

N

S

) and (

S

q

=

S

r

), then set

header:dir

to 1 or 2.

3 Else if (

S

q

6=

S

r

), then update the message header

by

(1) selecting one

ele-ment of

T

q;r

, say(

w

i

;dim;dir

), such that

the sum of the distance between nodes

N

C

and

w

i

and the distance between nodes

w

i

and

N

D

is the smallest.

(2) setting

header:N

I

,

header:dim

, and

header:dir

to

w

i

,

dim

, and

dir

, respec-tively.

As shown in Figure 2(a), message 1 is routed from node

A

(15

;

16)to node

H

(6

;

8), and message 2 is routed

from node

I

(10

;

9)to node

N

(4

;

10). For message 1, the

header is updated to ((6

;

8)

;

(14

;

15)

;

,1

;

2) due to step

3.1.3. Thus, it is routed to node

B

(14

;

15)via

V IN

2 by

an adaptive deadlock-free routing algorithm in [6] due to

step 3.3.2. Then it is routed to node

C

(14

;

14)via

V C

,1

;

2

due to step 2. When message 1 reaches node

C

, the header is updated to((6

;

8)

;

(12

;

8)

;

,0

;

1)due to step 3.1.3. Then

it is routed to node

D

(12

;

8)via

V IN

1 and

V IN

2 by an

adaptive deadlock-free routing algorithm in [10] due to step 3.3.1, and is routed to node

E

(11

;

8)via

V C

,0

;

1due to step

2. And so on, message 1 is routed to node

F

(9

;

8)via

V IN

1

[6] due to step 3.3.2, is routed to node

G

(8

;

8)via

V C

,0

;

1

due to step 2, and is finally sent to node

H

via

V IN

1 by

[6] due to step 3.2.2. For message 2, it is first routed to

J

via

V IN

2by [6] due to step 3.3.2, is routed to node

K

via

V C

1

;

2due to step 2, is routed to node

L

via

V IN

1by [6]

due to step 3.3.2, is routed to node

M

via

V C

,1

;

1 due to

step 2, is finally sent to node

N

via

V IN

1by [6] due to step

3.2.2.

Theorem 1 Algorithm 3.1 is deadlock-free with two virtual

(7)

A a B b C c D d

Figure 3. A waiting cycle of four messages

A;B;C

, and

D

.

PROOF.The proof is divided into three parts: (P1) we as-sign each virtual channel

x

one channel number

num

(

x

),

(P2) we prove that a message can always find a virtual chan-nel to use for each one hop in a non-decreasing order of channel numbers, (P3) A waiting cycle is not a real dead-lock.

For P1, let virtual channel

x

be output from a node in

S

i

(

i

 0). Then,

num

(

x

) is set to

i

if virtual channel

x

is in

V IN

1, and

num

(

x

)is set to,

i

if virtual channel

x

is in

V IN

2. For P2, suppose a message, whose

des-tination

N

D

2

S

r

, is sent to

N

C

via virtual channel

y

and will be sent out from

N

C

via virtual channel

x

. We need to show

num

(

x

) 

num

(

y

). If

N

C

6=

N

R

, then

num

(

x

)=

num

(

y

). Thus, we consider

N

C

2

S

q

receives

the message from an intermediate node

N

I

2

S

t

(

S

t

6=

S

q

)

via virtual channel

y

. Three cases are discussed: (C2.1) vertex

V

t

is an ancestor of vertex

V

r

in the directed path graph, (C2.2) vertex

V

r

is an ancestor of vertex

V

t

in the di-rected path graph, and (C2.3) vertices

V

r

and

V

t

has least common ancestor

V

lca

. For C2.1, (

V

t

;V

q

) is a directed

edge in the directed shortest path

P

down

from vertex

V

t

to vertex

V

r

due to step 4.1.2 of algorithm 2.1. It implies

t < q



r

and virtual channels

x

and

y

are all in

V IN

1.

Thus

num

(

y

) =

t < q

=

num

(

x

). For C2.2,(

V

q

;V

t

)is

a directed edge in the directed shortest path

P

up

from ver-tex

V

r

to vertex

V

t

due to step 4.1.1 of algorithm 2.1. It implies

r



q < t

and virtual channels

x

and

y

are all in

V IN

2. And

num

(

y

) =,

t <

,

q

=

num

(

x

). For C2.3, (

V

q

;V

t

)is a directed edge in the directed shortest path

P

up

from vertex

V

lca

to vertex

V

t

due to step 4.1.3 of algorithm 2.1. If

V

q

=

V

lca

, then virtual channel

y

is in

V IN

2 and

virtual channel

x

is in

V IN

1. Thus,

num

(

y

)=,

t < q

=

num

(

x

). If

V

q

6=

V

lca

, then virtual channels

x

and

y

are

all in

V IN

2. And,

num

(

y

) = ,

t <

,

q

=

num

(

x

).

For P3, consider a waiting cycle as shown in Figure 3, where message

A

(resp.

B;C;D

) holds virtual channel

d

(resp.

a;b;c

) and requests

a

(resp.

b;c;d

). By P2, we have

num

(

a

)

num

(

d

)

num

(

c

)

num

(

b

)

num

(

a

). It

implies

num

(

a

)=

num

(

d

)=

num

(

c

)=

num

(

b

). Thus,

virtual channels

a;b;c

and

d

are in a

M

i

. If

i

= 0, then

messages are routed by an adaptive and deadlock-free rout-ing algorithm presented in [10]. Otherwise, messages are routed by an adaptive and deadlock-free routing algorithm presented in [6]. Thus, the waiting cycle is not a real dead-lock.2

4. Conclusion

In a concurrent multicomputer, a reliable routing algo-rithm requires deadlock-freedom and fault-tolerance. Many researchers [1, 3, 10] proposed adaptive and deadlock-free routing algorithms using a certain number of virtual chan-nels per physical link. But the shape of the tolerated faults should be rectangular. Thus, some good nodes need to be seen as faulty nodes and prohibited from interchanging messages with the other good nodes. In this paper, using two virtual channels per physical link, we propose an adap-tive routing algorithm to tolerate irregular faulty patterns. Thus the node utilization is increased up to 100%. Our method requires a central control unit or the global infor-mation of the node state.

References

[1] R. V. Boppana and S. Chalasani, “Fault-tolerant wormhole routing algorithms for mesh networks,” IEEE Trans. Com-put., vol. 44, pp. 848-864, 1995.

[2] Y. M. Boura and C. R. Das, “Fault-tolerant routing in mesh networks,” International Conference on Parallel Processing, pp. 106-109, 1995.

[3] A. A. Chien and J. H. Kim, “Planar-adaptive routing: Low-cost adaptive networks for multiprocessors,” 19th Annual International Symposium on Computer Arch., pp. 268-277, 1992.

[4] C. M. Cunningham and D. R. Avresky, “Fault-tolerant adap-tive routing for two-dimensional meshes,” 1st IEEE Sympo-sium on High Performance Computer Arch., pp. 122-131, 1995.

[5] W. J. Dally and H. Aoki, “Deadlock-free adaptive routing in multicomputer networks using virtual channels,” IEEE Trans. Parallel Distributed Syst., vol. 4., pp. 466-475, 1993. [6] C. J. Glass and L. M. Ni, “Fault-tolerant wormhole routing

in meshes,” 23rd International Symposium on Fault-Tolerant Computing., pp. 240-249, 1993.

[7] R. L. Hadas and E. Brandt, “Original-based fault-tolerant routing in the mesh,” 1st IEEE Symposium on High Perfor-mance Computer Arch., pp. 102-111, 1995.

[8] D. H. Linder and J. C. Harden, “An adaptive and fault-tolerant wormhole routing strategy fork-aryn-cubes,” IEEE

Trans. Comput., vol. 40, pp. 2-12, 1991.

(8)

[10] C. C. Su and K. G. Shin, “Adaptive fault-tolerant deadlock-free routing in meshes and hypercubes,” IEEE Trans. Com-put., vol. 45, pp. 666-683, 1996.

[11] M. J. Tsai, “Adaptive Fault-Tolerant Routing for Multicom-puters,” submitted to IEEE Trans. Comput..

數據

Table 2. T j;k obtained for the injured mesh shown in Figure 1(a).
Figure 1. (a) shows a 21  21 injured mesh, where 3 faulty blocks B 1  B 3 are formed by Definition 1, and M 0  M 4 are decided after the completion of algorithm 2.1
Table 3. T j;k obtained for the injured mesh shown in Figure 2(a). 0 1 2 3 4 j n k 5 6 7 8 9 - G 0 ; 1 G 0 ; 2 G 0 ; 1 [ G 0 ; 2 G 0 ; 4 0 G 0 ; 2 [ G 0 ; 4 G 0 ; 6 G 0 ; 7 ; G 0 ; 9 G 1 ; 0 - G 1 ; 2 G 1 ; 3 G 1 ; 4 1 G 1 ; 2 [ G 1 ; 3 [ G 1 ; 4 G 1 ; 4 G
Figure 2. (a) shows a 21  21 injured mesh, where two messages 1 and 2 are routed by algorithm 3.1.

參考文獻

相關文件

Given an undirected graph with nonnegative edge lengths and nonnegative vertex weights, the routing requirement of a pair of vertices is assumed to be the product of their weights.

Responsible for providing reliable data transmission Data Link Layer from one node to another. Concerned with routing data from one network node Network Layer

Triple Room A room that can accommodate three persons and has been fitted with three twin beds, one double bed and one twin bed or two double beds... Different types of room in

A European Organisation for Research and Treatment of Cancer phase III trial of adjuvant whole- brain radiotherapy versus observation in patients with one to three brain

 BayesTyping1 can tolerate sequencing errors, wh ich are introduced by the PacBio sequencing tec hnology, and noise reads, which are introduced by false barcode identi cations to

“Ad-Hoc On Demand Distance Vector Routing”, Proceedings of the IEEE Workshop on Mobile Computing Systems and Applications (WMCSA), pages 90-100, 1999.. “Ad-Hoc On Demand

• As RREP travels backwards, each node sets pointer to sending node and updates destination sequence number and timeout entry for source and destination routes.. “Ad-Hoc On

Furthermore, given a set of nets in a bus on routing grids with obstacles, and the length constraints for all the nets in the bus, based on this proposed longest path generation,