2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their...

11
IEEE TRANSACTIONS ON COMPUTERS, VOL. c-33, NO. 4, APRIL 1984 Generalized Hypercube and Hyperbus Structures for a Computer Network LAXMI N. BHUYAN, MEMBER, IEEE, AND DHARMA P. AGRAWAL, SENioR MEMBER, IEEE Abstract -A general class of hypercube structures is presented in this paper for interconnecting a network of microcomputers in parallel and distributed environments. The interconnection is based on a mixed radix number system and the technique results in a variety of hypercube structures for a given number of pro- cessors No depending on the desired diameter of the network. A cost optimal realization is obtained through a process of discrete optimization. The performance of such a structure is compared to that of other existing hypercube structures such as Boolean n-cube and nearest neighbor mesh computers. The same mathematical framework is used in defining a corre- sponding bus oriented structure which requires only two I/O ports per processor. These two types of structures are extremely suit- able for local area computer networks. Index Terms -Distributed computers, hyperbus structures, hypercube structures, local area networks, multistage intercon- nection networks, parallel computers, topological optimization. I. INTRODUCTION S EVERAL structures have been proposed in the literature for interconnecting a large network of computers in parallel and distributed environments [2]-[12]. In this paper, we present a generalized hypercube structure and reveal some interesting properties of hypercubes. An inter- connection structure in general should have a low number of links per node (degree of a node), a small internode distance (diameter), and a large number of alternate paths between a pair of nodes for fault tolerance. The distance between any two nodes is defined as the number of links traversed by a message, initiated from one node and sent to another via intermediate nodes. In a network of N nodes, the diameter is defined as D = maxm{dij 1 i,j - N}, where dij = distance between nodes i and j along the shortest path. De- signing a network with a low message traffic density and good modularity is also desirable. The Boolean n-cube computer [7] is an interconnection of N = 2' processors which may be thought of as placed at the cornets of an n-dimensional cube with each edge of the cube havinig two processors. The degree of a node and the diameter of this type of structure are equal to n = log2 N. A loop structure with additional links is imbedded in this structure, Manuscript received March 24, 1983; revised October 12, 1983. A pre- liminary version of this paper was presented at the 9th Annual International Symposium on Computer Architecture, April 1982. L. N. Bhuyan is with the Department of Electrical and Computer Engi- neering, University of Southwestern Louisiana, Lafayette, LA 70504. D. P. Agrawal 1S with the Computer Systems Laboratory, Department of Electrical and Computer Engineering, North Carolina State University, P. O. Box 7911, Raleigh, NC 27650. 111 010 101 lkt 110 101 Fig. 1. A Booleani n-cube computer with N = 8. and for N = 8, this is illustrated in Fig. 1. When the total number of nodes N equals WD, W and D both being integers, the nodes can be arranged as aD-dimensional hypercube with W nodes in each dimension. If a node is connected to its two nearest neighbors in each dimension, a nearest neighbor mesh hypercube is obtained. The degree of a node in such a structure is 2D and the.diameter is WD/2 for W > 2 [8]. There is also a loop structure associated with a nearest neigh- bor mesh as shown in Fig. 2 for a two-dimensional mesh with 9 nodes. We can also deduce that a bidirectional single loop structure [3] is equivalent to a nearest neighbor connection with dimension D = 1. This structure has a minimum num- ber of links and a diameter of N/2. Any two nonadjacent faulty nodes will disconnect the loop. With the addition of an extra link to the loop structure the diameter is reduced to 0(VN-) [4]. On the other hand, a completely connected struc- ture has (N - 1) links per node with a distance of one between any two nodes. Any two nodes remain connected 0018-9340/84/0400-0323$01.00 C 1984 IEEE 323

Transcript of 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their...

Page 1: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

IEEE TRANSACTIONS ON COMPUTERS, VOL. c-33, NO. 4, APRIL 1984

Generalized Hypercube and Hyperbus Structuresfor a Computer Network

LAXMI N. BHUYAN, MEMBER, IEEE, AND DHARMA P. AGRAWAL, SENioR MEMBER, IEEE

Abstract-A general class of hypercube structures is presentedin this paper for interconnecting a network of microcomputers inparallel and distributed environments. The interconnection isbased on a mixed radix number system and the technique resultsin a variety of hypercube structures for a given number of pro-cessors No depending on the desired diameter of the network. Acost optimal realization is obtained through a process of discreteoptimization. The performance of such a structure is compared tothat of other existing hypercube structures such as Boolean n-cubeand nearest neighbor mesh computers.The same mathematical framework is used in defining a corre-

sponding bus oriented structure which requires only two I/O portsper processor. These two types of structures are extremely suit-able for local area computer networks.

Index Terms -Distributed computers, hyperbus structures,hypercube structures, local area networks, multistage intercon-nection networks, parallel computers, topological optimization.

I. INTRODUCTION

S EVERAL structures have been proposed in the literaturefor interconnecting a large network of computers in

parallel and distributed environments [2]-[12]. In this paper,we present a generalized hypercube structure and revealsome interesting properties of hypercubes. An inter-connection structure in general should have a low number oflinks per node (degree of a node), a small internode distance(diameter), and a large number of alternate paths between apair of nodes for fault tolerance. The distance between anytwo nodes is defined as the number of links traversed by amessage, initiated from one node and sent to another viaintermediate nodes. In a network ofN nodes, the diameter isdefined as D = maxm{dij 1 i,j - N}, where dij =distance between nodes i and j along the shortest path. De-signing a network with a low message traffic density andgood modularity is also desirable.The Boolean n-cube computer [7] is an interconnection of

N = 2' processors which may be thought of as placed at thecornets of an n-dimensional cube with each edge of the cubehavinig two processors. The degree of a node and the diameterof this type of structure are equal to n = log2 N. A loopstructure with additional links is imbedded in this structure,

Manuscript received March 24, 1983; revised October 12, 1983. A pre-liminary version of this paper was presented at the 9th Annual InternationalSymposium on Computer Architecture, April 1982.

L. N. Bhuyan is with the Department of Electrical and Computer Engi-neering, University of Southwestern Louisiana, Lafayette, LA 70504.

D. P. Agrawal 1S with the Computer Systems Laboratory, Department ofElectrical and Computer Engineering, North Carolina State University,P. O. Box 7911, Raleigh, NC 27650.

111

010

101

lkt

110

101

Fig. 1. A Booleani n-cube computer with N = 8.

and for N = 8, this is illustrated in Fig. 1. When the totalnumber of nodes N equals WD, W and D both being integers,the nodes can be arranged as aD-dimensional hypercube withW nodes in each dimension. If a node is connected to its twonearest neighbors in each dimension, a nearest neighbormesh hypercube is obtained. The degree of a node in such astructure is 2D and the.diameter is WD/2 for W > 2 [8].There is also a loop structure associated with a nearest neigh-bor mesh as shown in Fig. 2 for a two-dimensional mesh with9 nodes. We can also deduce that a bidirectional single loopstructure [3] is equivalent to a nearest neighbor connectionwith dimension D = 1. This structure has a minimum num-ber of links and a diameter of N/2. Any two nonadjacentfaulty nodes will disconnect the loop. With the addition of anextra link to the loop structure the diameter is reduced to0(VN-) [4]. On the other hand, a completely connected struc-ture has (N - 1) links per node with a distance of onebetween any two nodes. Any two nodes remain connected

0018-9340/84/0400-0323$01.00 C 1984 IEEE

323

Page 2: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

3EEE TRANSACTIONS ON COMPUTERS, VOL. c-33, NO. 4, APRIL 1984

IAk

11

02

12

Fig. 2. A nearest neighbor mesh with N = 32*

even if all other nodes fail. However, both the high cost of a

large number of links and the multiport requirement of 0(N)limit the size of the network.

In a multicomputer environment, the average internodedistance, message traffic density, and fault tolerance are very

much dependent on the diameter and degree of a node. Thereis a tradeoff between the degree of a node and the diameter.A stiructure with a low degree of a node has a large diameterand a structure that has a low diameter usually possesses a

large degree of a node. A single loop structure and a com-

pletely connected structure as described above represent thetwo extremes. The (diameter * degree of a node) is thereforea good criterion to measure the performance of a structure.The hypercube structures seem to offer a reasonable charac-teristic. One commonly noted disadvantage of the Booleann-cube computer is that the number of I/O ports is log2 N.However, keeping in mind the simple routing, the low di-ameter, and the large (log2 N) number of disjoint paths, thistopology seems extremely suitable for a local computernetwork. Moreover, with current advances in technology, thenumber of I/O ports per processor up to 1000 has becomequite feasible [13]. Recently, a few structures have beenproposed with better graph theoretic properties [9]-[12].Their fault tolerance is basically limited by the fixed numberof I/O ports per node. What we present here is a completegeneralization of the hypercube and some interesting analy-ses of hypercube structures, where good fault tolerance isguaranteed. The present study should therefore be viewed in

that context.This paper presents two new hypercube structures, called

generalized hypercube (GHC) and generalized hyperbus(GHB) structures. They possess the following characteristics:

1) The interconnection supports any numnber of nodes N.This is in contrast with the existing hypercube structures,where N = WD for some integer values of W and D.

2) The design is based on the allowable diameter of thenetwork. If the diameter can be increased, a structure with alower degree of a node can be obtained.

3) These structures are highly fault tolerant, they possessa small average message distance and a low traffic density.

4) The structures presented here are very general in na-ture. Single loop, Boolean n-cube, nearest neighbor meshhypercube and fully connected systems can be considered asa part of this generalized structure.

5) The GHB structures have only two links per node, andhence require only two I/O ports per processor.The paper is organized as follows. Section II describes a

useful mixed radix number system used in [14], [15], thetopology, the properties, and the routing and broadcastingalgorithms of the GHC structures. Section III analyzes theGHC structures with respect to a cost parameter defined by(degree of a node) * (diameter). The section also outlines theprocedure for obtaining an optimal GHC (OGHC) structure.Section IV considers the parameters like average distance,cost, traffic density, and fault tolerance, etc. to compare theperformance of an OGHC to other hypercube structures.Section V obtains the equivalent mr-cube multistageinterconnection networks (MIN's) of the GHC structures.Section VI presents the GlIB structures and derives the ex-pressions for internode distances.

II. THE GENERALIZED HYPERCUBE (GHC) STRUCTURE

A. A Mixed Radix Number System

Let N be the total number of processors and be representedas a product of mi's, mi > 1 for 1 i - r.

N =mr *mr *M **ImiThen, each processorX between 0 toN - 1 can be expressedas an r-tuple (xrxr_- 1 .* xI) for 0 S xi C (mi- 1). Associ-ated with each xi is a weight wi, such that Jr xi w = X andwi= 2 m1mj= Mi.i*mi-2** MI for all l i r.Hence, w, = 1 always.Example -1:

Let N = 24= 4 *3 * 2.

mi = 2, m2 = 3, m3 = 4.

w =1, w2=2, W3 = 6.

Then,X= (x3x2xI), 0 x1 1, 0 x2 2, 0 x3 3for anyXin the range 0-23. 010 = (000), 2310 = (321) in thismixed radix system.

B. Description of the GHC Structure

Each processor X = (xrxr-I.. xi+lxixi_ * . xl) will beconnected to processors (xrxri. xi+I x[ xi_1I.. xI) for all1 < i S r, where xl takes all integer values between 0 to(mi - 1) except xi itself. This type of interconnection will be

324

Page 3: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

BHUYAN AND AGRAWAL: HYPERCUBE AND HYPERBUS STRUCTURES

called the generalized hypercube (GHC) throughout this pa-per. In general, the total number of links (L) is greater thanthe total number of processors (N) in this GHC topology.Example 2: For N = 24, any processor can be expressed

in the mixed radix system between (000) and (321). Pro-cessor (000) is connected to processors (001), (010), (020),(100), (200), and (300). Processor (001) is connected toprocessors (000), (01 1), (021), (101), (201), and (301) andso on as shown in Fig. 3. For the sake of clarity, connectionis not completed in the figure for the nodes shown by dottedlines. Imbedded in this structure is a loop structure arrangedas (000)-> (001) (011)-> (021)-> (121) (221)(321)-1 (311) (301 (300) -(310) > (320)(220) - 12(0) (020) (010)- ( 10)-> (210)(200)-> (201) (21 1) (1 1)-> (101)-> (100)->(000) with 4 extra links per node.The GHC structure consists of r-dimensions with mi num-

ber of nodes in the ith dimension. A node in a particular axisis connected to all other nodes in the same axis. Accordingly,we make the following observations.

1) From any particular node X = (x, Xr- I Xi+ xi xi-1 ...

xI), there are (mi - 1) number of links in the ith direction.Hence, for all i, 1 - i - r, the total number of links per nodeor the degree of a node t = I (mi -1).

2) Each link is connected to two processors. Hence,the total number of links in GHC structure L = N/2 i2j=I(mi- 1).

3) de = distance between any two nodes x and y in termsof number of hops = Hamming distance between the nodes.Hamming distance between two nodes differing in theiraddresses in the ith coordinate only is unity and the totalHamming distance is the sum of the number of coordinates inwhich the addresses differ.

4) The addresses can differ at maximum in all the r-coordinates. Thus, the diameter of the structure = r.

C. Routing Procedure

A message is formatted at the source node with sourceaddress, destination address and a few tag bits. The sourceand destination addresses are specified in the binary equiva-lent of the mixed radix numbers. The ith digit of the addresscan take a maximum value of (mi - 1), and hence can beexpressed in Flog2 mil binary bits, where Fxl is the smallestinteger greater than or equal to x. As a result, any pro-cessor 0 S X - N - 1 can be specified completely ini=l Flog2 mil binary bits. At each node, the destination ad-

dress is compared to its own address, contained in a register.If the addresses match, the node accepts the message. Ifthey do not, a digit by digit comparison takes place and thenode transmits the message along the direction of the firstdiffering digit. The process continues until the destination isreached. However, at each node the message goes through acertain delay, waiting for the particular link to be free.

Based on the above routing procedure, we can deducethe following.

1) If two nodes differ in their address by d coordinates(dimensions), then d is the shortest distance between thesetwo nodes. A message can start from the source node along

020

010

000

321

I 311

301

Fig. 3. A 4 * 3 * 2 GHC-structure.

any one of these d coordinates and then follow the aboverouting procedure to reach the destination node. These paths,illustrated in Fig. 4(a), are disjoint and cover a distance deach. This observation is similar to the characteristics of aBoolean n-cube computer [16].

2) From any node (xrXr-I * xi *.*.* x2x1), the message cango to an intermediate neighboring node and travel to thecorresponding neighboring node of the destination (YrYr-i...Yi ... Y2Y1) In the previous case, a message could start alonga particular node in the ith coordinate only if the source anddestination addresses differed in their ith coordinate. Note inFig. 4(b), that a message can start along any of the nodesin the ith coordinate for 1 - i - r without depending onwhether or not the source and destination addresses mismatchin their ith coordinate. Then the intermediate nodes encoun-tered on a single path have their ith coordinate fixed at aparticular digit. The paths are therefore disjoint. A suitablereference to the path generation process is [10]. Hence, thereare £ alternate paths between any two nodes of the GHCstructure where "f" is the degree of a node.

3) For any number of faults less than "C" in the system, theworst case distance between two connected nodes is r + 1.This is also clear from Fig. 4(b).

Alternate Routing Procedures: As mentioned above,there are d disjoint paths of equal length d between any twonodes separated by Hamming distance d. If the channels inone path are busy or faulty, a message can be routed in adifferent path with the same distance d. This is possible if thestatus of every link is updated at each node. In that case, thesource node can route the message along an alternate paththus saving the delay in transmission. This process requiresadditional hardware and software and the path computationmay be time consuming. W the link is busy another simplemethod is to route the message along the next digit of the firstdiffering digit. For example, with N = 24, while routingfrom (001) to (221), instead of routing through (021) first, themessage can be routed to (201) and then to (221), if theprevious channel is busy.

D. BroadcastingAny processor can send a message to all other processors

in just r steps by using the following algorithms.The structure is an r-dimensional hypercube with (mi - 1)

325

Page 4: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

EEE TRANSACTIONS ON COMPUTERS, VOL. c-33, NO. 4, APRIL 1984

I(x-x ,....x.. ..v.Y)- (x-x ...-X...-x,v~vA---Ux-...xx Y ..-.vArri arrvi4Yir - -, - --r-r-l- - - - --3'Z- -'1''rrv-"321 %r, ---d d-r d-2Z -'71\

(xrxr r* , X3y2x1) (ra. .Xd .x4y3y2x1) (xr. id.lydyd-l'y2x)

(xx xryr-i" d...

(xrxr-l. 1dyd-lxd-2.*x1) - (r... Xd+lydyd-lxd-2... xl) - x.r- .xd+',d Yd-td-2yd-3--l

(xrxr-l. d+lYdxd_l lx1) - (x Xd+lydxd-1..x2yl) --- (x2... xdiYdXd-1Yd2..

(a)

(xx1 a... .x21) (x.. xi... x3y21) (xr.. x4y3y21) ( Ye'4Yr-1 ... Yi

(ax.l x. x2-) - (x.43Y2) -x- (x a Y3'-1)Y.r-i-y2 1 r2) \

OcX-l x 2ll1 xXxrl ICy2 fl-') (xrxr-l x4y3y21-'-) (Yryr-I.. y2TI-' !

(x x1)-r- ... Xlx (x2) --x- (yy...yly)

(xr)r- 321 (axr1rI... x4'312x r 5y4y31 yryr-i..Y3 y1

(xrx_l *2x3'2)r- (xr .x4y31)2-(l X5r5Y4Y3'2x) lxl r.(yr- y3'2y

lxb Xi xi) (lxy .xYhi (lx- (-x xy4)y- (y ...-y1yr 3211I

x

(2xir. .x.. 1) - (ix1r-I.x2y1)- (ix r-I .x 3y2y) 1 (2y1r-iY'Y-mr xr1..x m(Iaxr ...x2y1) - (mrlxr-1...x 3 2 *- (2Y r-1y-ly

(b)Fig. 4. (a) "d" disjoint paths of length "d" each between nodes at Hamming distance "d." (b) "("altemnate paths

between any source and destination.

numbers of links in the ith dimension. Each link in the ma-

chine is numbered, with the links in the ith dimension beingnumbered "i" for all 1

- i r. Let us assume node A(00 0) wishes to broadcast nmessage. To do so, it sendsmessages with a weight "i" in the links along the ith dimen-sion. In the second step, all the receiving nodes reduce tiWweight by one and transmit the messages along all thosedimensions whose numbers do not exceed the reducedweight. The process continues for r steps until all the nodeshave received the message. It may be noted that r is the lowerbound for the minimum number of steps required for broad-casting in a graph with a diameter of r.

Example 3: The structure for N = 24 is shown in Fig. 3.In the first step, nodes (001) will receive the message with a

weight "1," nodes (010) and (020) will receive the messagewith weight "2," and nodes (100), (200), (300) will receive themessage with weight "3." In the next step, all these nodes willreduce their weights by one-and transmit the messages as'shown below.

(001) -* no transmission

(010) and (020) -* (011) and (021) respectively with

weight "1"(100), (200) and (300) -- (101), (201) and (301)

respectively with weight "1," and(110), (120), (210), (220), (310) and (320) withweight "2."

In the third and final step,

(110) 11), (120) (121), (210) > (21 1),

(220) (221), (310) -- (311), (320) ->,(321) withweight "1.,,

The complete broadcqasting is achieved in three steps, as

shown in Fig. 5.

III. ANALYSIS OF GHC STRUCTURES

A. Structure Optimization

When an interconnection of N processors is desired withthe constraint that the maximum distance between any twonodes along the shortest path or the diameter"does not exceedr, N has to be expressed as a product of r quantities asN = mr * Mr * I*i. The number of links per node =Ej=I (mi - 1). In fact, there are several ways to factor Ninto r components. For example, 16 can be factored as 8 * 2or 4 * 4. An optimized structure with diameter r is ob-tained when the total number of links in the structure is atthe minimum.Lqtnma 1: When .N/ is an integer, a cost optimal GHC

with diameter "r" is obtained if mi = \7N for all 1 : i S r.Proof: Since the number of links per node "f" is the same

for all the nodes, a minimization of "C' with respect to mi'sgives the desired result

Nml1 =

irn ...i i2Mrr.i m2

i=2 MrMr-I..

**M2

Amr aMr-i am,2

This results in Mr = Mr-l = * = m2 = Im = N. Q.E.D.Since flN may not be an integer, all mi's should lie as close

to VN as possible. WhenN = Mr, the mathematics involvedis simply a higher radix system, each xi lying between 0 and(m - 1) for all 1 i S r.

There is another aspect of the GHC structures. The numberof links per node is different for different values of diameter

326

Page 5: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

BHUYAN AND AGRAWAL: HYPERCUBE AND HYPERBUS STRUCTURES

8

7

6

5t

opt 4

3

2 1

(a)

0213 4 5 6 7 8 9

D .

Fig. 6. r.,, for number of processors = mD.

02C011 20 220

A' 2 2Jf 110

Oo0 101 200

2 2 1

9100 200

(b)

121

1120

111 A)_}/

/1i

110

221

1220

211 ,

4/1

210

321

320

311

310

000

0(c)

Fig. 5. (a) Broadcasting at the first step, (b) broadcasting at the second step,(c) broadcasting at the third step.

r. Again, for example, 16 can be expressed as 4 * 4, 4 *2 * 2, 2 * 2 * 2 * 2 with diameters 2, 3, and 4, respectively.As mentioned earlier, a structure with a lower degree of anode usually has a higher diameter. If a cost factor ( isdefined as the product of the diameter and the links per node,a discrete optimization of r = (mi - 1) with respect to rand subject to the constraint that "Ii= i = N and integervalues of mi's, yields an optimized structure. As an example,the optimal values of r for processors equal to 2D and 3D, areplotted in Fig. 6. Because of the discrete optimization in-volved, it was not possible to derive a closed form solutionfor ropt.

Conjecture 1: For N, a power of two, an absolute costoptimalGHC (OGHC) is obtained when r = [log4 NJ, whereLxl is the largest integer smaller than or equal to x.

This deduction follows from Fig. 6. Up toN = 23, r0p1 = 1indicates a fully connected system. For N = 24, r1pt = 2

results in a two-dimensional GHC with 4 nodes in each di-mension. ForN = 25, there are 4 nodes in one dimension and8 nodes in the other. ForN = 26, ropt = 3 and so on. Also, forN and m powers of two a GHC with m nodes in each dimen-sion has a cost of (m - 1) log2 N which has a local minimumat m = 4.

For N, a power of four, the degree of a node of an OGHCis 3 log4 N = 1.5 log2 N. The diameter is log4 N =0.5 log2 N. Hence, the cost = 0.75 (log2 N). The cost ofother structures [9]-[12] are proportional to (10g2 N) insteadof (log2 N). However, they do not possess as good a faulttolerance as the GHC structures do. For N, a power of 5, thecost is 0.742 log2 N when m = 5. However, only values ofN which are powers of two are considered in conjecture 1 forlater use in Section IV.

B. Internode Distance and Queueing Delay

Distance between any processor X = (X. Xr- I Xi+ I Xi Xi-1* *. x2xI) and X' = (XrXr-I . Xi+IXi XiI .X2XI), Xi E

{0, 1,2, * mi- 1} and x4 # xi, is unity. In general, thedistance between any two processors is equal to the Hammingdistance between them; that is, in how many coordinates theiraddresses differ. The average internode distance plays akey role in determining the queueing delay in a computernetwork. For calculating the number of nodes at differentdistances, the node (00 . . 0) can be assumed to be the sourcenode without any loss in generality. There are (mi - 1) num-ber of nodes which differ from the source node only in the ithdimension. Hence, N1 = total number of nodes differing bydistance 1

= E(mi - 1).:i=l

The nodes which have distance 2 from the source nodemust differ in their addresses by two coordinates i and j. Inthese two dimensions, (mi- 1) (mj - 1) different combina-tions can occur. Again, these two dimensions are selected outof r such dimensions existing in the address space. Hence,the total number of nodes differing by the shortest distance 2,

N2 = E(mi - 1) (m - 1)

i,je{1,2, r} and i j.

327

Page 6: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

IEEE TRANSACTIONS ON COMPUTERS, VOL. c-33, NO. 4, APRIL 1984

There are (2) terms to be added in this summation. Thesame ideas can be extended to calculate the number of nodesdiffering by a Hamming distance d,

Nd = E (mi-l) (m - 1) (mk - 1) . *d such terms

and the summation includes (d) such items.A Boolean n-cube structure can be considered as a special

case of GHC structures, where mi = 2 for 1 - i S r. As aresult, N = 2r and r = log2 N = n.

Hl(mi-1) = I and Nd =(d)=d!(n-d)!

Once the number of nodes at a -distance d is known, theaverage message distance is d = ( I dNd)/(N - 1).To get an idea how the average message distance varies, let

us consider the case when N = Mr. Also, as mentionedearlier, mi's should be as close as possible to XN for anoptimized structure with diameter r, and hence this shouldgive approximate results for any N that can be factored intor-components.When all mi's are equal to m, the number of nodes at a

distance d, Nd = (d)(m - 1)d, and

d = d (m- I)d]/(N - 1)

- -(m -1) ( 1[Er da (m -)I(N - 1)

= [(inm- l 1) (rn-i + 1)r]/(N- 1)

= r- (m- 1) * nr-1/(NM-1), = lN&.Fig. 7 shows the variation of average message distance (d)

with respect to r for a few values of m. When in = 2, it issimply a Boolean n-cube structure. For an OGHC, d0.375 log2 N.The average message traffic density in a link of GHC

structures is defined as

Average message distance * number of nodestotal number of links

dN 2dN rr

2 = (mi - 1) = (mi - 1)

2dFor N = Mr, p = =0.5 for an OGHC structure.

r(m-1)

The GHC structures can be modeled as a communicationnet with the ith channel represented as an MIMI1 systemwith Poisson arrivals at a rate Ai and exponential service timeof mean 1/1.ci [17]. g = average service rate and ci =

m=4

0 1 2 3 4 5 6 7 8 9 10

r

Fig. 7. Average message distance in GHC-structure with N = m'.

capacity of the ith channel. Additionally, we assume thefollowing.

1) Each node is equally likely to send a message to everyother node in a fixed time period.

2) The routing is done as per the fixed routing algorithmdescribed in Section II.

3) The load is evenly distributed, i.e., Ai is the same forall i.

4) The capacity of each link in the network has been opti-mally assigned [17].

5) The cost per capacity per link is unity.Under the above conditions, the delay of GHC structures

is given by [17]

,=1 'A)T=

C(1 - dy)whereM = total number of directed links,A = EM=j Aj = MAi because of assumption 3),-y = the utilization factor, andC = l ci = total capacity of the structure.

With N nodes and t bidirectional links per node,

M_(=N) 22

Hence,

T_=(2FLC(1 -dy)

With constants A, C, and N, the above delay can be normal-ized as

d2t(1 -dy),

The delay increases exponentially with increased utiliza-tion and saturates at a particular load, given by sat = lI/d. Ina fully connected system, ysat = 1 since d = 1, and hence thecomputer network performs very well under heavy load con-

328

4

3

i,j,k--- EjI,2, rl2

Page 7: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

BHUYAN AND AGRAWAL: HYPERCUBE AND HYPERBUS STRUCTURES

1000.

800

tIT

600 1

400

200

0

r=4

" r=1 (fully connected)

0.1 0.2 0.3 0.4 0.5 0.6

utilization

Fig. 8. Normalized queueing delay in GHC-structures withN = 16.

ditions. In general, the performance of the GHC structureswill lie between a loop structure and a fully connected net.The average delay in different GHC structures for N = 16is plotted in Fig. 8. As expected, the optimized structurewith N = 4 * 4, performs well both in light load and heavyload conditions. Table I presents a summary of some rele-vant information for different GHC structures with N = 16and 24.

IV. PERFORMANCE OF GHC STRUCTURES

In this section, the performance of the GHC structureswill be compared to that of other hypercube structures. Thenumber of nodes N will be assumed to be a power of two andthe GHC considered here is the OGHC as obtained inSection III. The loop structure is a nearest neighbor mesh inone dimension, whereas a completely connected structure isa one-dimensional GHC. The Boolean n-cube computer, al-though it is a part of the GH and the nearest neighbor mesh,is a well known topology and will therefore be consideredseparately. The nearest neighbor mesh considered here is anoptimal structure as described below.NearestNeighborMesh Hypercube Structures: IfNcan be

expressed as a product of r-terms, a generalized nearestneighbor mesh hypercube is obtained when a node (Xr,Xr-I..xi+lxixi-I*** x2x,) is connected to [XrXrI i... xi+](xi + 1)mod mixi I ... x2x,] and [XrXr-I... xi+(xi - 1) mod mixi I ... x2xI] for all 1 c i - r. Such a structure forN = 4 *

3 * 2 is shown in Fig. 9. The degree of a node is 2r when allthe factors are greater than two. The diameter of such astructure is = Lmi/2i. For a fixed value of N, there can beseveral ways to factor N into r components. The degree of anode being fixed at 2r, an optimal structure is obtained whenzl=i Lmi/2i is minimum. For high values of mi, the floorfunction-can be neglected. The following lemma results.Lemma 2: An optimal nearest neighbor mesh with some

fixed r dimensions is obtained when mi- N.Again, for a fixed value of N, there can be several ways to

design a nearest neighbor mesh. A discrete optimization ofthe product of the degree of a node and the diameter, forvarious values of r, will give rise to an optimal design. The

TABLE ICHARACTERISTICS OF GHC STRuCTURES

Links Cost AverageDiameter per Factor Message

N Factors r node f ( Distance d ysat

2*2*2*2 4 4 16 2.13 0.474*2*2 3 5 15 1.87 0.535

16 4*4 2 6 12 1.6 0.62516 1 15 15 1 1(fullyconnected)3 * 2 * 2 * 2 4 5 20 2.26 0.4424*3 * 2 3 6 18 2.0 0.5

24 6*4 2 8 16 1.65 0.60624 1 23 23 1 1(fullyconnected)

010

Fig. 9. A generalized nearest neighbor mesh hypercube withN = 4 * 3 * 2.

12

11

10

9

8

7

ropt 6

5

4

3

2

1

o L1

m=3

D

Fig. 10. r0p, for nearest neighbor mesh hypercube withN = MD.

values of r,pt for N, powers of 2 and 3 are plotted in Fig. 10.For N, a power of two, an optimal structure is obtained when

329

Page 8: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

IEEE TRANSACTIONS ON COMPUTERS, VOL. c-33, NO. 4, APRIL 1984

there are 8 nodes in each dimension, as can be seen fromthe computation.

Conjecture 2: For N, a power of two, an optimal nearestneighbor mesh hypercube is obtained when r = Flog8 N7.Throughout this section, such an optimal structure

(8-cube) will be considered for performance comparison.Average Message Distance (d):

2(1 + 2 + 3 +Loop: d

N-1+2

N- I

= (N + 1) for N odd4

2(1 + 2 + 3 +N - 2

+ +2/

N- 1

1 N(N - 2)for N even

4. N - I

0.25 N for any N.

Boolean n-cube: nd= nN

\d 2 N-i1

0.5 log2 N.

Nearest neighbor mesh:WithN = Wr, the maximum distance along each direction

is W/2. The average distance along each dimension is 0.25 Was in the case of a loop. For r dimensions, d -0.25 rW.With an optimal design, W = 8 and d = 0.25 x log8 N x8 = 0.667 1og2 N.OGHC: d = 0.375 log2 N.Completely connected: d = 1.Cost:

The cost of a structure = degree of a node * diameterLoop: Degree of a node = 2, Diameter = 0.5N.

Hence, cost = N.Boolean n-cube: Degree of a node = Diameter =

log2 N, cost = log2 N.Nearest neighbor mesh: Degree of a node = 2 log8 N =

0.667 log2 NDiameter = r (W/2) =

41og8N= 1.333 log2NCost = 0.889 Iog2 N.

OGHC: Cost = 0.75 log2 N.Completely connected: Cost = N - 1.Average message traffic density:Average message traffic density p = (dLoop: Number of links L = N; hence p

Boolean n-cube: L = 0.5N log2 N; p =

d/0.5 log2N = 1

X N)/L= = 0.25N

Nearest neighbor mesh: L = r * N = 0.334N log2 Np =d/0.334 10g2N = 2.

OGHC: p = 0.5.

Fault Tolerance: The fault tolerance of a structure is theconnectivity or the number of node disjoint paths betweenany two nodes. The connectivity for a loop is 2; for a Booleann-cube, it is log2 N; for a nearest neighbor mesh it is 2r [18],i.e., 0.667 log2 N here; for an OGHC it is 1.5 log2 N and fora completely connected structure it is (N - 1).

V. m-CUBE INTERCONNECTION NETWORKS

An N x N multistage interconnection network (MIN)[19]-[21] is capable of connecting N number of processingelements (PE's) to N number of memory modules (MM's).Various MIN's described in the literature [19] employ 2-input2-output switching elements (SE's). Here, we illustrate theuse of GHC structures in designing N x N MIN's imple-mented with m x m SE's. We limit our discussions to onlyvalues ofN and m which are powers of two.An m-cube multicomputer is a GHC structure with m num-

ber of nodes in each dimension. When N is a power of m,there are m nodes in each of r = lgm N dimensions of thehypercube. When N is not a power of m, there will ber - 1 = Llgm Nj dimensions with m nodes each and onedimension with N/mr - 1 number of nodes. All the nodes ina dimension are connected to each other by dedicated links.A completely connected multicomputer corresponds to acrossbar [22] in a circuit switched multiprocessor. When anm-cube GHC is unfolded, an m-cube MIN results. By un-folding we mean that the ith stage of the MIN is connected asper the ith dimension of the GHC structure for 1 - i - r.An m-cube MIN will consist of lgm N stages of N/mnumber of m x m crossbar modules at each stage when N isa power of m. When N is not a power of m, there will beLlogm NJ stages of m x m crossbar modules followed byN/mr - 1 x N/mr - 1 crossbar modules at the last stage. Thisalso results by unfolding anrm-cube GHC. The construction ofa 32 x 32 4-cube MIN is illustrated in Fig. 11. When aBoolean n-cube structure with m = 2 is unfolded, a gener-alized cube interconnection network [20] results. Some recentstudies [15], [23], [24] have shown that a 4-cube MIN givesoptimal performance in terms of bandwidth -and cost.

VI. GENERALIZED HYPERBUS (GHB) STRUCTURES

In the preceding section, N specifies the number ofprocessors in the structure. If, however, it specifies the num-ber of buses, a different configuration results. Then, eachprocessor is connected to two adjoining buses, running indifferent dimensions of the generalized hypercube. Such astructure for N = 3 * 2 is shown in Fig. 12. These types ofstructures will be referred to as generalized hyperbus (GHB)structures. The number of processors P in a GHB structurewill be greater than the number of buses N. The distancebetween two processors is specified by the number of busesa message has to travel from one processor to the other. SinceGHB structures have fewer links than nodes, these structureswill give rise to a high message traffic density in a bus, andhence will saturate rapidly. However, having only two I/O

330

Page 9: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

BHUYAN AND AGRAWAL: HYPERCUBE AND HYPERBUS STRUCTURES

[0230

301

(a)

V00

01

10

11

20

21

000100200300

001101201301

010110210310

011111211311

020120220320

021121221321

030130230330

p31131231331

(b)Fig. 11. (a) A 4 * 3 * 2 GHC structure, (b) a 32 x 32 4-cube network.

ports per processor, the cost is very small as compared to theGHC structures.

The GHB structure consists of N buses with N = mr *

mr-i * * ** * n2 * ml. A bus in the GHB structureis denoted by an r-tuple (XrXri xii * x2xI) for 0

- xi SMi - 1 for 1 - i - r. A processor will be denoted(XrXr lI xi+ [ yizi]xi- xl), i.e., with xi replaced by a

2-tuple [yizi] for yi, zi E {0, 1, (mi - 1)}. This means

that the processor is connected to buses (XrXr I

Xi+± yixil* .xi) and (XrXr - 1 . ..Xi+IZiXi-I ..Xi).Yi, Zi e {O, 1, ,(mi - 1)} and the ith position can vary be-

tween 1 and r. The Hamming distance between a pair [yizi]and some v; is 0 if vi is equal to yi or zi or [yiwi] or [wizi] andequals 1, otherwise. Similarly, Hamming distance between xiand vi is 0 if xi = vi and equals 1 if xi vi . The actual distancebetween any two different processors = Hamming distancebetween them + 1.

I ~ - .

0 0 [131 2 [1j

Fig. 12. A GHB structure withN = 3 * 2.

The GHB structures have the following features:1) Each processor has only two I/O ports.2) The number of processors connected to a bus is

p = E (mi - 1).i=l

3) Total number of processors in the system.

NrP = - E (mi - 1).

4) Two processors can differ in their addresses in all ther-coordinates. Thus, the diameter of the structure = r + 1.

5) There are p bus disjoint paths between any two buses.A bus disjoint path also corresponds to a node disjoint path.

6) There are d disjoint paths of equal distance d between anytwo buses with a Hamming distance d.

7) A processor is disconnected if both the adjoiningbuses fail.

Internode Distance: Since the structure is symmetrical,let us consider Or-i [01] as the source node. Or-i means000 ... up to (r - 1) terms.Nodes differing by unit distance:1) When nodes have addresses {wO} and {wl}, where

w is a set of (r - 1) terms 000 [Ox'] 0 for all

1 [o 1]

331

p 1) 0 E) 23 0 [0] 1 [O 2] 1

Page 10: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

IEEE TRANSACTIONS ON COMPUTERS, VOL. c-33, NO. 4, APRIL 1984

1 - xi (mi - 1) and 2 S i S r. The number of suchnodes =2 Ei=2(r i- 1)

2) When the nodes are of the form {or-l[Oxi]} or{orI[lxl]}, x, e {2,3, -(ml - 1)}. The number of suchnodes = 2(ml - 2). Hence, the total number of nodes withdistance 1

(mi - 1) + 2(m, - 2).N, .= 21i=2

When N = mr, N1 = 2(r - 1)'(m - 1) + 2(m - 2) =2rm - 2r - 2.Nodes differing by distance d:When N = m, * Mr-l * MI* inm, it is extremely difficult

to derive closed form expressions for Nd. Let us considerN = mr with mi = m, 1 i S r. There are several possi-bilities as discussed below.

1) Nodes of the form {w[Oxj]} and {w[lx&]}, where w is ar - 1 tuple differing from Or-i in (d - 1) dimensions. Foreach [Ox,] and [lxl] in the least significant digit (lsd), thereare (d-l) (m - 1)d- number of nodes and there are (m - 1)such [Ox] and (m - 2) such [ lx] in the lsd. Hence, number ofnodes = (2m - 3) (d-1) (m -

2) Nodes of the form {wO} or {wl}.(a) When w contains one [Oxi] in the ith dimension for

2 iZ r. As a result of [Oxi] in the ith dimension, the nodemust differ in its address by (d - 1) places out of '(r - 2)dimensions. There are (r - 1) values i can take and thereare (m - 1) different values for xi. Hence, the number ofnodes = 2(r- 1)2(d2)(i - 1)dNm - 1).

(b) When w contains [ yz], y, z O 0 in the ith dimension.There are (mY 1) such elements possible in one dimension andfor each [yz] there are (d-2) (m - 1)d.2. Again, [yz] can oc-cupy (r -1) dimensions except lsd and the total number ofnodes = 2 (r- 1) (12f1) (d-2) (m- 1)d2.

3) Nodes of the form {wx}, x E {2, 3,... (m - 1)}.(a) When w contains [Oy] in the ith dimension, for

each x in the lsd, there can be (mi - 1) such [Oy] in a parti-cular dimension. The number of nodes for each such[Oy] = (-2)(i-l)d2 There are (r - 1) dimensions and(m - 1) number of [Oy] in each dimension; number of nodesfor each x = (r - 1) (m - 1) (r-2) (m- l)d-2. Again, therecan be (m - 2) such x in the lsd. Hence, the total number ofnodes = (m - 2) (r - 1) (m -1) (d-22) (m'-)d2.

(b) When w contains ['yz], y, z / 0 in the ith dimension,there can be (mY1) such pairs in each dimension with eachhaving (d-3) (m - 1)d3 nodes. For (r - 1) such dimensionsand (m - 2) such x in the lsd, the total number ofnodes = (m - 2) (r-1)(m-i) (d-2) (i - d)d3.

4) Nodes of the form {w[yz]},y,z E {2, 3, (m - 1)}.There are (mT-2) such pairs in the lsd. For each pair there willbe (r-1) (m - 1)d-2 nodes differing by distance d. Hence, thetotal number of nodes = (md2)(d-') (m-The total number of nodes Nd differing by a distance d

in the GHB structure will be the sum of all the nodesin the above four possibilities. The maximum possibledistance = r + 1. The total number of nodes in GHB struc-

ture with N = mr

P = 1/2 N - r(m - 1).

Hence, the average message distance isZr+l

d = 2( dNd)/N r ((m - 1)..

The average message traffic density in a bus in GHBstructure is

d- 2 E (Mi _1)=~~~~~=N

r

= 1/2 * dE (mi -1)i=l

and when N = mr, p = 1/2 d r(m-1).

VII. CONCLUSION

Two types of hypercube structures, generalized hypercube(GHC) and generalized hyperbus (GHB) have been presentedin this paper. The GHC structure has a low cost compared toother hypercube structures. Because of its high connectivity,the fault tolerance is quite good. It also has a low averagemessage distance and a low traffic density in the links. Thesefactors increase approximately as log N. In general, the per-formance of GHC structure lies between that of a loop and acompletely connected structure. In a GHC design it is impos-sible to have degree of a node less than log2 N. The GHBstructures are obtained when a node in the GHC is replacedby a bus and a link -in GHC is replaced by a node. Hence,traffic density on a bus in a GHB structure may be quite high.However, the number of I/O ports per processor is fixed attwo. A generalized spanning bus hypercube [8] can similarlybe obtained when each node is connec'ted to 'r' buses, eachspanning a different dimension in the address space and minumber of nodes sharing a bus in the ith direction. The nodeswill have identical addresses except in their ith coordinate.The study provides clean design methodologies for a com-

puter network based on the desired diameter. It also revealsmany interesting properties of the hypercubes.

ACKNOWLEDGMENT

The authors are thankful to R. Finkel and W. Leland of theUniversity of Wisconsin, Madison for their constructivecriticisms and helpful comments.

REFERENCES

[1] L. N. Bhuyan and D. P. Agrawal, "A general class of processor inter-connection strategies," in Proc. 9th Annu. Int. Symp. on Comput. Arch.,Austin, TX, Apr. 1982, pp. 90-98.

[2] G. A. Anderson and E. D. Jenson, "Computer interconnection structures:Taxonomy, characteristics and examples," ACM Comput. Surveys,vol. 7, pp. 197-213, Dec. 1975.

[3] M. T. Liu, "Distributed loop computer networks," in Advances inComputers, Vol. 17. New York: Academic, 1978.

[41 B. W. Arden and H. Lee, "Analysis of chordal ring network," IEEETrans. Comput., vol; C-30, pp. 291-295, Apr. 1981.

332

Page 11: 2j=I(mi- - SJTUgchen/course/acn/Reading... · Hamming distance between two nodes differing in their addresses in the ith coordinate only is unity and the total Hammingdistanceis thesumofthenumberofcoordinates

BHUYAN AND AGRAWAL: HYPERCUBE AND HYPERBUS STRUCTURES

[5] D. P. Agrawal, T. Y. Feng, and C. L. Wu, "A survey of communicationprocessor systems," in Proc. COMPSAC, Chicago, IL, pp. 668-673,Nov. 1978.

[6] A. M. Despain and D. A. Patterson, "X-tree: A tree structured multi-processor computer architecture," in Proc. 5th Symp. on Comput. Arch.,Apr. 1978, pp. 144-151.

[71 H. Sullivan and T. R. Bashkow, "A large scale, homogeneous, fullydistributed parallel machine I," in Proc. 4th Symp. Comput. Arch.,Mar. 1977, pp. 105-117.

[8] L. D. Wittie, "Communication structures for large networks of micro-computers," IEEE Trans. Comput., vol. C-30, pp. 264-273, Apr. 1981.

[9] F. P. Preparata and J. Vullemin, "The cube connected cycles: A versatilenetwork for parallel computation," Commun. Ass. Comput. Mach.,vol. 24, pp. 300-309, May 1981.

[10] D. K. Pradhan. and S. M. Reddy, "A fault-tolerant communication archi-tecture for distributed systems," IEEE Trans. Comput., vol. C-31,pp. 863-870, Sept. 1982.

[11] H. S. Stone, "Parallel processing with the perfect shuffle," IEEE Trans.Comput., vol. C-20, 1971, pp. 153-161, Feb. 1971.

[12] R. Finkel and M. H. Solomon, "The lens interconnection strategy," IEEETrans. Comput., vol. C-30, pp. 960-965, Dec. 1981.

[13] L. S. Haynes et al., "A survey of highly parallel computing," Computer,vol. 15, pp. 9-24, Jan. 1982.

[14] D. H. Lawrie, "Memory-processor connection networks," Ph.D. dis-sertation, Univ. of Illinois, 1973.

[15] L. N. Bhuyan and D. P. Agrawal, "Design and performance of a generalclass of interconnection networks," in Proc. 1982 Int. Conf. on ParallelProcessing, Bellaire, Mil, Aug. 1982, pp. 2-9; see also, IEEE Trans.Comput., vol. C-32, Dec. 1983.

[16] J. G. Kuhl, "Fault-diagnosis in computing networks," Univ. of Iowa,ECE Tech. Rep. R-80-1, Aug. 1980, 183 pages.

[17] L. Kleinrock, Queueing Systems: Vol. II, Computer Applications.New York: Wiley, 1976.

[18] K. Bhat, "On the properties of arbitrary hypercubes," Computer andMathematics with Applications, to be published.

[19] T. Y. Feng, "A survey of interconnection networks," Computer, vol. 14,pp. 12-27, Dec. 1981.

[20] H. J. Siegel and R. J. McMillan, "The multistage cube: A versatile inter-connection network," Computer, pp. 458-473, Dec. 1981.

[21] D. P. Agrawal, "Graph theoretic analysis and design of multistage inter-connection networks," IEEE Trans. Comput., vol. C-32, pp. 637-648,July 1983.

[22] W. A. Wulf and C. G. Bell, "C.mmp-A multiminiprocessor," in Proc.AFIPS, Fall Joint Comput. Conf., Dec. 1972, pp. 765-777.

[23] R.J. McMillan, G.B. Adams, III, and H.J. Siegel, "Performanceand implementation of 4 x 4 switching modes in an interconnectionnetwork for PASM," in Proc. 1981 Int. Conf. on Parallel Processing,Aug. 1981, pp. 229-233.

[24] L. N. Bhuyan and D. P. Agrawal, "VLSI performnance of multistageinterconnection networks using 4 * 4 switches," in Proc. 3rd Int. Conf.on Distributed Computing Systems, Oct. 1982, pp. 606-613.

Laxmi N. Bhuyan (S'81-M'83) received the M.Sc.degree in electrical engineering from Regional Engi-neering College, Rourkela, Sambalpur University,India, in 1979, and the Ph.D. degree in computerengineering from Wayne State University, Detroit,MI, in 1982.During 1982-83, he taught at the University of

Manitoba, Winnipeg, Canada. Since September1983, he has been with the Department of Electricaland Computer Engineering, University of South-western Louisiana, Lafayette, as an Assistant

Professor. His research interests include parallel and distributed computerarchitecture, VLSI layout, and multiprocessor performance evaluations.

Dr. Bhuyan is a member of the Association for Computing Machinery.

Dharma P. Agrawal (M'74-SM'79) was born inBalod, M.P., India, on April 12, 1945. He receivedthe B.E. degree in electrical engineering from theRavishankar University, Raipur, M.P., India, in1966, the M.E. (Hons.) degree in electronics andcommunication engineering from the University ofRoorkee, Roorkee, U.P., India in 1968, andftheD.Sc. Tech. degree from Federal Institute of Tech-nology, Lausanne, Switzerland in 1975.He has been a member of the faculty in the M.N.

Regional Engineering College, Alahabad, India, theUniversity of Roorkee, Roorkee, India, the Federal Institute of Technology,Lausanne, Switzerland, the University of Technology, Baghdad, Iraq;Southem Methodist University, Dallas, TX, and Wayne State University,Detroit, MI. Currently, he is with the North Carolina State University, Raleigh,NC, as an Associate Professor in the Department of Electrical and ComputerEngineering. His research iditerests include parallel/distributed processing,computer architecture, computer arithmetic, fault tolerance, and infornationretrieval. He has served as a referee for various reputed journals and inter-national conferences. He was a member of Program Committees for theCOMPCON Fall of 1979, the Sixth IEEE Symposium on Computer Arith-metic, and Seventh Symposium on Computer Arithmetic held in Aarhus,Denmark in June 1983. Currently, he is a jpember and the Secretary of thePublications Board, IEEE Computer Society, and recently, he has beenappointed as the Chairman of the Rules of Practice Committee of thePUBS Board. He served as the Treasurer of the IEEE-CS Technical Committeeon Computer Architecture and has been named as the Program Chairmanfor the 13th International Symposium on Computer Architecture to be held inAnn Arbor in June, 1984. He is also a distinguished visitor of the IEEEComputer Society.

Dr. Agrawal is a member of the ACM, SIAM, and Sigma Xi. He is listedin Who's Who in the Midwest, the 1981 Outstanding Young Men of.America,and in the Directory of World Researchers' 1980's subjects published by theInternational Technical Information Institute, Tokyo, Japan.

333