Decayeux05-3DHex

Embed Size (px)

Citation preview

  • 7/27/2019 Decayeux05-3DHex

    1/10

    3D Hexagonal Network: Modeling, TopologicalProperties, Addressing Scheme, and

    Optimal Routing AlgorithmCatherine Decayeux and David Seme

    AbstractThe 2D hexagonal mesh, based on triangle plane tessellation, is considered as a multiprocessor interconnection network.

    The 3D hexagonal mesh is presented as a natural extension of the hexagonal mesh. Although the topological properties of the 2D

    hexagonal mesh are well known, existing addressing schemes are not suitable to be extended to 3D hexagonal mesh. Then, we

    present, in this paper, a new addressing scheme and an optimal routing algorithm for 2D hexagonal network based on the distance

    formula and using shortest paths. We propose also a 3D hexagonal network that can be built with 2D hexagonal meshes as a natural

    generalization. We also present some topological properties, an efficient addressing scheme, and an optimal routing algorithm based

    on our 2D routing algorithm.

    Index TermsParallel architectures, interconnection networks, hexagonal mesh, routing, communication algorithms.

    1 INTRODUCTION

    IN a massively parallel computer, processors (nodes)communicate by exchanging messages over a networkof communication links. In current machines, the network isnecessarily of low degree. Each processor can communicatedirectly with only a few other processors, and theremainder of the processors must be reached indirectly byrouting messages along a sequence of links. A routingalgorithm is optimal when the message sent by the sourcenode goes through the minimum number of links (corre-sponding to the shortest path between the source and the

    destination) to reach the destination node.There are several important characteristics that aid inevaluating different network configurations. These are thedegree of a node, which is defined as the number ofincoming/outgoing links per node, the diameter of thenetwork which is the maximum value of all shortest pathsbetween any two nodes. Since a network that has a lowdiameter usually requires a higher node degree, its cost isdefined as (diameter nodedegree).

    Several surveys of parallel computing architectures exist[1], [17], [19], [22]. Thegreater thesize andcomplexity are, themore expensive the processor network is. So, it is desirable tohave a constant node degree (the number of its adjacentneighbors) to minimize the cost of such networks. One of themost popular architecture is the mesh-connected processornetwork: Cray T3D (with torus topology), J-Machine (MIT),M-machine (MIT),Symult2010, Stanford Dash,Intel Paragon,Intel Touchstone Delta [18], etc.

    Hexagonal mesh multiprocessor belongs to the family ofplanar graphs. It uses a triangular plane tessellation. Vertices

    are processors (also called nodes), and edges are linksbetween them. The hexagonal torus was used in HARTSproject [21] at theUniversity of Michigan.Performances werestudied in [8], [20], communication algorithms such asrouting and broadcasting are developed for a hexagonaltorus in [7]. Embeddings of tree in hexagonal array werestudied in [11], while fault tolerant properties are investi-gated in [2]. A dictionary machine for hexagonal meshes wasstudied in [24].There are oftenconfusions betweenhexagonaland honeycomb meshes. In [12], [13], [20], hexagonal meshes

    are referred as honeycomb. Indeed, authors begin withhexagonal tessellation, but they consider each hexagon as aprocessor. In the same way, in wireless networks, hexagonaltessellation is used,but hexagonsare consideredas areaswithsix neighbors [3], [10].

    As the hexagonal mesh is a suitable 2D interconnectionnetwork for cellular mobile computing, it is natural topropose a 3D generalization of that network for cellularmobile computing indoor environment. In this context, thethird dimension (high) becomes as important as the twoothers. Thus, there exists two previous definitions of 3Dhexagonal meshes presented in [5] and [15], [16]. The firstone is not a good approach since the presented model is notfeasible as we will show in Section 3. The second attempt of

    modeling 3D hexagonal mesh is based on the same conceptsof hypercube networks and is not a natural generalizationof 2D hexagonal mesh. In this paper, we define a new andmore natural 3D hexagonal mesh close to this described in[5] and based on 2D hexagonal mesh. We present sometopological properties, an efficient addressing scheme andan optimal routing algorithm. This 3D architecture issuitable for cellular mobile computing indoor environment.

    This paper is organized as follows: First, we present newresults about adressing scheme, distance formula, androuting algorithm for 2D hexagonal mesh in Section 2.Then, Section 3 introduces new results about 3D hexagonalnetworks based on the 2D hexagonal mesh, and the resultsare presented in Section 3. In Section 4, we propose some

    concluding remarks.

    IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 16, NO. 9, SEPTEMBER 2005 875

    . The authors are with LaRIA, Facultede Mathematiques et dInformatique,Universitede Picardie-Jules Verne 33, rue Saint Leu, 80039 Amiens Cedex,France. E-mail: {decayeux, seme}@laria.u-picardie.fr.

    Manuscript received 20 Feb. 2004; revised 6 Sept. 2004; accepted 20 Nov.2004; published online 21 July 2004.For information on obtaining reprints of this article, please send e-mail to:

    [email protected], and reference IEEECS Log Number TPDS-0052-0204.1045-9219/05/$20.00 2005 IEEE Published by the IEEE Computer Society

  • 7/27/2019 Decayeux05-3DHex

    2/10

    2 2D HEXAGONAL NETWORKS

    2.1 Previous Works

    There exists three regularplane tessellations composed of the

    same kind of regular (equilateral) polygons: triangular,square, and hexagon corresponding to dividing a plane intoregular squares, triangles, and hexagons, respectively. Theywere the basis for designing direct interconnection networkswith highly competitive overall performance. Triangularplane tessellation is called hexagonal mesh, while hexagonalplane tessellation is called honeycomb mesh [6], [23].

    A hexagonal mesh can be built by induction. A singlenode O is considered as a hexagonal mesh of size 1. Ahexagonal mesh of size 2 is a regular hexagon of side 1(centered at O) such as each vertex is connected to O. Ahexagonal mesh of size t is obtained from hexagonal meshof size t 1 by adding nodes such as each node of thehexagonal mesh of size t 1 is center of a hexagonal meshof size 2.

    Below are some of well-known topological properties(Proof can be found in [7]):

    Degree : 6

    Number of nodes : 3t2 3t 1 nNumber of links : 3n 8:66 ffiffiffinpDiameter : 2 t 1 % 1:16 ffiffiffinpBisection : 2:31

    ffiffiffin

    pCost : 6:93

    ffiffiffin

    p

    A convenient way to describe nodes and edges of ahexagonal mesh is to introduce a coordinate system. In [7],

    an interesting addressing scheme is proposed. It is used tofind a shortest path from one node to any other. Authorsalso develop a one-to-all broadcasting algorithm. But, thisaddressing scheme is only suitable in hexagonal torus andnot in hexagonal mesh. So, their algorithms cannot be usedon hexagonal meshes.

    In [5], a new addressing scheme for hexagonal mesh isbased on two axes at 120 degrees. Each node has only twocoordinates. In this addressing scheme, nodes have uniquecoordinates. But, there exists no formula for distancebetween two nodes. Then, the optimality of the proposedalgorithm was not proved.

    Fig. 1 illustrates the coordinate system that was proposed

    forhoneycomb network by Stojmenovic [23], andadopted for

    hexagonal networks by Garcia et al. [9]. In this scheme, threeaxes X, Y, and Z, parallel to three edge directions, and amutual angle of 120 between any two of them areintroduced,as indicated in Fig. 1. Let i, j, and k be three unit vectors in

    these axes. These three vectors are, obviously, not indepen-dent. More precisely, they are related by i j k 0. But,asthe authors wrote, this addressing scheme is, unfortunately,not unique. Then, they proposed two cumbersome ways toarrive at a unique node address.

    In the addressing scheme proposed in [14], we havethree axes directions X, Y, and Z. A node A, at theintersection of three axes X u, Y v, and Z w, have thetriplet (u;v;w) as coordinates. This addressing scheme isvery simple and efficient since it assume unique coordinatesfor each node. Moreover, there exists, for this coordinatesystem, a formula for distance between two nodes.

    Definition 1. The distance between to nodes P1

    and P2

    is thenumber of links in a shortest path from P1 to P2.

    In [14], the algorithm based on the distance of two nodesleads to an optimal routing. As the authors wrote in [14], ageneralization for higher dimension is not very interestingusing this addressing scheme. It seems more convenient tofind an addressing scheme using a couple of coordinates.

    2.2 New Results

    2.2.1 Preliminaries

    Property 1.

    1. Nodes of a network of size t are on concentric hexagons

    of side 1, 2, . . . , t 1 (Fig. 2).2. All nodes in a such concentric hexagon of side i are at

    the same distance i of the central node.

    2.2.2 Addressing Strategy

    Here, we propose a new addressing scheme such that eachnode has a unique couple of coordinates. This addressingsystem, based on two axes at 60 degrees, leads to a formulafor distance between two nodes and a simple optimalrouting algorithm. Let X and Y-axes start at the center O ofthe hexagonal mesh and being parallel to two directions asin Fig. 2. Each node of a hexagonal mesh is addressed as

    x; y where x and y are coordinates in that system. A

    876 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 16, NO. 9, SEPTEMBER 2005

    Fig. 1. Addressing for hexagonal network. Fig. 2. Coordinates system.

  • 7/27/2019 Decayeux05-3DHex

    3/10

    nonboundary node of coordinates x; y has six neighbors:x 1; y, x 1; y, x; y 1, x 1; y 1, x; y 1, andx 1; y 1.

    Denote AiBiCiDiEiFi a hexagon centered at O as withAii; 0, Bi0; i, Cii; i, Dii; 0, Ei0; i, and Fii; iand i is a positive integer. The distance between O and Ai(respectively, Bi, Ci, Di, Ei, and Fi) is equal to i.

    2.2.3 Distance

    The distance defined in this addressing scheme is based onthe Property 1.

    Theorem 1. Let MxM; yM and NxN; yN be two nodes. Thedistance DistM; N between M and N is equal to thedistance DistO; N0, where N0 has dx xN xM and dy yN yM as coordinates.

    Proof. As NN0 MO, N0 is the translate of N by the vector

    translation MO

    . A translation is a linear transformationwhich preserves length. So, DistO; N0 DistM; N. tu

    Theorem 2. Let M and N be two nodes of coordinates xM; yMand xN; yN. The distance DistM; N between M and Nverifies the following formula: DistM; N max dxj j;dyj j; dx dyj j with dx xN xM and dy yN yM.

    Proof. By Theorem 1, DistO; N0 DistM; N i withN0dx; dy. By Property 1, N0 belongs on an hexagoncentered at O. DistO; N0 DistO; Ai by Property 1,DistO; Ai i. So, DistO; N0 i. Denote by AiBiCiDiEiFi this hexagon where Aii; 0, Bi0; i, Cii; i,Dii; 0, Ei0; i, and Fii; i.

    . If N0dx; dy is on the line segment AiBi, then:0 dx i, 0 dy i, and dx dy i (this is anequation of the line AiBi). In this case,

    i dx dy dx dyj j max dxj j; dyj j; dx dyj j:Hence, DistM; N max dxj j; dyj j; dx dyj j.

    . If N0dx; dy is on the line segment DiEi, then:i dx 0, i dy 0, and

    i dx dy dx dyj j max dxj j; dyj j; dx dyj j DistM; N:

    . IfN0dx; dy is on BiCi (respectively, EiFi), theni dx 0, dy i (respectively, 0 dx i,dy i). Hence,

    i dyj j max dxj j; dyj j; dx dyj j DistM; N:. IfN0dx; dy is on CiDi (respectively, AiFi), then

    0 dy i, dx i (respectively, i dy 0,dx i). Hence,

    i dxj j max dxj j; dyj j; dx dyj j DistM; N:

    Then, the distance between M and N verifies thefollowing formula:

    DistM; N max dxj j; dyj j; dx dyj j:ut

    Corollary 1. Denote AiBiCiDiEiFi the hexagon of side i DistM; N and centered at M (see Fig. 3).

    If Dist

    M; N

    dx

    j j, then N

    2 CiDi

    [ AiFi

    .

    If DistM; N dyj j, then N 2 BiCi [ EiFi.If DistM; N dx dyj j, then N 2 AiBi [ DiEi.

    2.2.4 Routing Algorithm

    Ourrouting algorithmis based on Theorem 2 andCorollary 1.At first, the source node Scomputes dx, dy and calculates thedistance i between S and the destination node D. ByProperty 1 and Corollary 1, D is on a side ofAiBiCiDiEi thehexagon of side i centered at S. S compares the distance i todxj j, dyj j, dx dyj j in order to locate the destination node D in

    a side of the hexagon centered at S. Then, it computes cptu,cptv,and cptw which are, respectively, thenumber of links weshould go through in the {, | and | { directions to gofrom S to D. With these data items, the source node S cancompute thecoordinatesof itsneighborwhichcan receive themessage from S. Each intermediate node receiving themessage decreases cptu, cptv, or cptw (ifcptu, cptv, and cptware greater than zero) or increases cptx, cptv, or cptw (ifcptu,cptv, and cptw are smaller than zero). Then, cptu, cptv, andcptw are all equal tozero means thatthemessageis atthenodeD. The signofcptu, cptv,and cptw determines the direction inwhich we should send the message (i.e., which is thefollowing node to reach).

    ALGORITHM 2D_ROUTING

    Source node (S)

    dx

    xD

    x; dy

    yD

    y

    dist max dxj j; dyj j; dx dyj jif (dist jdx dyj) then cptu dx; cptv dy; cptw 0else if (dist jdxj) then cptu dx dy; cptv 0; cptw dy

    else cptu 0; cptv dx dy; cptw dxendif

    if (cptu 0 or cptv 0 or cptw 0)Call ROUTING_PROTOCOLE_2D

    Send u0; v0; cptu; cptv; cptw; DATAendif

    All other nodes

    Receive (cptu, cptv, cptw, DATA)

    if (cptu 0 or cptv 0 or cptw 0)

    DECAYEUX AND SEM EE: 3D HEXAGONAL NETWORK: MODELING, TOPOLOGICAL PROPERTIES, ADDRESSING SCHEME, AND OPTIMAL... 877

    Fig. 3. Hexagon A4B4C4D4E4F4 centered at M.

  • 7/27/2019 Decayeux05-3DHex

    4/10

    Call ROUTING_PROTOCOLE_2D

    Send u0; v0; cptu; cptv; cptw; DAT Aendif

    PROCEDURE ROUTING_PROTOCOLE_2D

    if (cptu 0) then

    if (cptu > 0) then u0

    u

    1; v0

    v; cptu

    cptu

    1

    else u0 u 1; v0 v; cptu cptu 1else

    if (cptv 0) thenif (cptv > 0) then u0 v; v0 v 1; cptv cptv 1else u0 u; v0 v 1; cptv cptv 1

    else

    if (cptw 0) thenif (cptw > 0) then u0 u 1; v0 v 1;

    cptw cptw 1else u0 u 1; v0 v 1; cptw cptw 1

    endif

    endif

    endif

    Lemma 3. The algorithm 2D_ROUTING realizes the routingfrom a source node to a destination node.

    Proof. The proof is based on Corollary 1. Suppose that

    DistS; D dxj j. Denote AiBiCiDiEiFi the hexagon ofside i DistS; D and centered at S. By Corollary 1,D 2 CiDi [ AiFi. In this case, the routing algorithmuses two directions: { and | {. Thus, initially,cptu, cptv, cptw are equal to dx dy, 0, and dy,respectively. So, we go through dx dyj j links in the{ direction and dyj j links in the | { direction.

    Hence, the message is sent to the node D0 such that,

    SD0 dx dy { dy | { dx { dy | SD.So, the node D0 is, in fact, the destination D. tu

    Lemma 4. The routing algorithm 2D_ROUTING is optimal.

    Proof. We are going to prove that the message follows ashortest path ofdist links between the source node S andthe destination node D. If D 2 AiFi, then dx dyj j dx dy (because dyj j dxj j, dx ! 0, and dy 0.) Then,we go through dx dy links in the { direction and dylinks in the | { direction. So, we go through dx dy dy dx DistS; D l ink s. If D 2 CiDi, t he ndx dyj j dx dy (because dyj j dxj j, dx 0, and

    dy ! 0). Then, we go through dx dy links in the {direction and dy links in the | { direction. So, we gothrough dx dy dy dx DistS; D links, whichproves the optimality.

    Similar arguments are applied in other cases. tu

    Complexity: As our routing algorithm is based on thedistance (shortest path) between two nodes, its complexity(in the worst case) is O(

    ffiffiffin

    p) (i.e., equal to the diameter of the

    hexagonal mesh).

    3 3D HEXAGONAL NETWORKS

    3.1 Previous Works

    There exists two previous definitions of 3D hexagonal

    meshes. The first one is a generalization of the 2D hexagonal

    network [5]. Unfortunately, this model, in which the links

    should be of same length, cannot be built. Indeed, theproposed 3D hexagonal mesh of size 2 should contain

    triangles which are both right and equilateral! In [15], theauthors consider that the overall number of edges at each

    node should be linear in network dimension (as for higher

    dimensional meshes and honeycombs). Thus, the modelthat they propose is based on the similarity of hexagonal

    and mesh connected networks. Then, the degree of k-Dhexagonal network is the same as degree of (k 1)-D meshconnected computer. In the following, our approach is close

    to this described in [5]. We consider that the 3D hexagonalnetwork should be built with 2D hexagonal meshes.

    3.2 New Results

    3.2.1 Topological Properties

    In this section, we describe a new 3D hexagonal network. A

    single node O is considered as a hexagonal mesh of size 1. A

    3D hexagonal mesh of size 2 is based on the union of three2D hexagonal meshes of size 2 (ABEFGI, BCHGLK,

    ACDFLJ) centered in O generated by the three sides of an

    equilateral triangle ABC as shown in Fig. 4.Remark 5.

    1. There exists a fourth 2D hexagonal mesh of size 2in a 3D hexagonal mesh of size 2. Its hexagonalboundary is the hexagon DEKJIH.

    2. The convex hull of an 3D hexagonal mesh of size 2is a cuboctahedron (of unit edge length) centeredin O. A cuboctahedron has eight triangular facesand six square faces, 12 identical vertices, withtwo triangles and two squares meeting at each,and 24 identical edges, each separating a trianglefrom a square.

    A 3D hexagonal mesh can be built by induction. A 3D

    hexagonal mesh of size 2 is a basic tile. A 3D hexagonal mesh

    of size t is obtained from 3D hexagonal mesh of size t 1 by

    878 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 16, NO. 9, SEPTEMBER 2005

    Fig. 4. 3D hexagonal mesh of size 2.

  • 7/27/2019 Decayeux05-3DHex

    5/10

    addingnodesandlinkssuchaseachnodeofthe3Dhexagonal

    meshofsize t 1 iscenterofthebasictile(3Dhexagonalmeshofsize2).Now,wecall 3 HMt a 3D hexagonal mesh of size t(Fig. 5).

    Property 2.

    1. The points of the convex hull are in the cuboctahedron

    C of t 1 unit edge length centered at O.2. There exists four kinds of points in the convex hull:

    a. Twelve vertices of C.b. 24

    t

    2 points on the

    24edges of

    C.c. 8 1 2 t 3 8 t25t6

    2points

    in the interior of the eight triangular faces of C

    making up equilateral triangles (Fig. 6).d. 6 t 22 points in the interior of the six square

    faces belonging in a grid (Fig. 7).

    Theorem 6. The number of nodes in a 3 HMt is Nt 103

    t3 5t2 113

    t 1 nodes.Proof. Let Ni be the number of nodes in a 3 HMi. N1 1,

    N2 13. The convexhull ofa 3 HM3 is a cuboctahedronof2 units edge length. A 3 HM3 is obtained from a 3 HM2 by adding the 12 vertices of this cuboctahedron, the

    24 midpoints of each edge, and one node in the interior ofeachsquareface(Property2).N3 N2 12 24 6 55.Similarly, by Property 2:

    For i ! 2:

    Ni1 Ni 12 24i 1 6i 12 81 2 . . . i 2:

    As 1 2 . . . i 2 i2i12

    i23i22

    . Then,

    Ni1 Ni 12 24i 24 6i2 12i 6 4i2 3i 2:Thus, for i ! 2, Ni1 Ni 10i2 2.

    Thesumoftheserelations,fori 2 to i t 1,leadsto:Nt N2Pit1

    i2 10i22, Nt N210Pit1

    i2 i22i 2.

    As 12 22 . . . i 12 ii12i16

    , then: Nt N210tt12t1

    6 1 2t 4, Nt N2 53 2t3 3t2 t

    10 2t 4, Nt N2 103 t3 5t2 113 t 14. Finally, weobtain: Nt 103 t3 5t2 113 t 1. tuFor example, the number of nodes of a 3 HM3 (Fig. 5)

    is equal to N3 55.T h eo r em 7 . T he n um be r o f l in ks i n a 3 HMt is

    Lt 4t 15t2 7t 3,Proof. L1 0, L2 36. Since each edge is counted in two

    degrees, it follows that 2Lt

    PiNti

    1 deg

    i

    . Also, we

    determine the degree of each node of a 3 HMt. Eachnode in the interior of a 3 HMt is a center of ahexagonal mesh of size 2. So, the degree of a such node is

    12. The nodes of the convex hull of an 3 HMt havedifferent degrees. If the node is a vertex of the

    cuboctahedron, thus his degree is 5. If the node belongs

    on an edge of the cuboctahedron, his degree is 7. The

    degree of a node in the interior of square faces is 8. For a

    node in the interior of triangular faces, the degree is 9. By

    counting all the nodes of each case, we obtain the

    formula:

    Lt 1212 Nt1 5 12 7 24t 2 8

    6t 22 9 81 2 t 3:As 1 2 . . . t 3 t3t2

    2 t25t6

    2. Thus,

    Lt 6 103

    t3 15t2 713

    t 13

    30 84t 2

    24t2 4t 4 18t2 5t 6:Hence, Lt 20t348t240t124t15t2 7t3. tuFor example, the number of links of a 3 HM3 (Fig. 5) is

    equal to L3

    216.

    DECAYEUX AND SEM EE: 3D HEXAGONAL NETWORK: MODELING, TOPOLOGICAL PROPERTIES, ADDRESSING SCHEME, AND OPTIMAL... 879

    Fig. 5. 3D hexagonal mesh of size 3.

    Fig. 6. Triangular faces.

    Fig. 7. Square faces.

  • 7/27/2019 Decayeux05-3DHex

    6/10

    3.2.2 Addressing Strategy

    We extend the adressing scheme of two dimensionalhexagonal mesh (Fig. 2). Let { OA, | OB, and k OC

    be three unit vectors of 3D space such that O, A, B, and

    C are vertices of tetrahedrons (Fig. 8). X, Y, and Z-axes start

    at the center O of the 3D hexagonal mesh and being parallel

    to three directions (OA), (OB), and (OC) (with A1; 0; 0,B1

    2;ffiffi

    3p

    2; 0, and C1

    2;ffiffi

    3p

    6;ffiffi

    6p

    3) as shown in Fig. 9. This

    addressing scheme uses a unique triplet of coordinates

    (x;y;z) for a node and leads to a formula for distance

    between two nodes and a simple optimal routing algorithm.

    In the following, the coordinates of nodes are given in this

    addressing scheme. The basic tile (3D hexagonal mesh of

    size 2) is composed of 13 nodes: O0; 0; 0 the origin and his12 neighboring nodes A1; 0; 0, B0; 1; 0, C0; 0; 1,D1; 0; 1, H0; 1; 1, I1; 1; 0 and their symmetricaln o d e s F1; 0; 0, G0; 1; 0, L0; 0; 1, J1; 0; 1,K0; 1; 1; , and E1; 1; 0. Note that links can be seenas vectors. Hence, a link is parallel to one of this following

    directions: OA, OB, OC, OD, OH, and OI, whichmeans that a link is parallel of one of this vectors: {, |, k, { k, | k, and { |. Consequently, two nodesM and N are connected if and only if

    MN2 {; |; k; { k; | k; { |n o:Hence, 12 neighborsof a nonboundary nodex;y;zarenodesx 1; y ; z , x; y 1; z, x;y;z 1, x 1; y ; z , x; y 1; z,x;y;z 1, x; y 1; z 1, x; y 1; z 1, x 1; y ; z 1,x 1; y ; z 1, x 1; y 1; z, and x 1; y 1; z.

    Let Aii; 0; 0, Bi0; i; 0, Ci0; 0; i, Dii;i;i, Eii;i; 0,Fii; 0; 0, Gi0; i; 0, Hi0; i; i, Ii; i; 0, Jii; 0; i,Ki0; i; i, and Li0; 0; i (with i positive integer) be the12 vertices of the cuboctahedron AiBiCiDiEiFiGiHiIiJiKiLicentered at O. AiBiCiDiEiFiGiHiIiJiKiLi is the boundaryof the 3D hexagonal mesh of size i 1. Hence, a nodeNx;y;z of a 3 HMi1 verifies: i x;y;z i.Remark 8. A 3 HMt contains layers composed by part of

    2 HMt in different sets of planes, respectively, parallelto planes

    OAB

    ,

    OBC,

    OAC, and

    ABC

    (Fig. 9).

    Without loss of generalities, in the following, we

    consider that these layers are complete 2 HMt, respec-tively, denoted by Hex0, Hex1, Hex2, and Hex3.

    3.2.3 Distance

    Property 3.

    1. Nodes of a network of size t are on concentriccuboctahedron of side 1, 2, . . . , t 1.

    2. All nodes in a such concentric cuboctahedron of side iare at the same distance i of the central node.

    The distance betweenO

    and all nodes on a face of thecuboctahedron AiBiCiDiEiFiGiHiIiJiKiLi is equal to i.

    Theorem 9. Let M and N be two nodes of coordinatesxM; yM; zM and xN; yN; zN. The distance DistM; Nbetween M and N verifies the following formula:

    DistM; N max dxj j; dyj j; dzj j; dx dyj j; dx dzj j;dy dzj j; dx dy dzj j;

    with dx xN xM, dy yN yM, and dz zN zM.Proof. By Theorem 1, DistO; N0 DistM; N i with

    N0dx; dy. By Property 3, N0 belongs on the cuboctahe-dron AiBiCiDiEiFiGiHiIiJiKiLi centered at O. If

    N0dx; dy; dz is on the triangular face AiBiCi, then:0 dx i, 0 dy i, 0 dz i, and dx dy dz i(this is an equation of the plane AiBiCi)). In this case,

    i dx dy dz max dxj j; dyj j; dzj j; dx dyj j; dx dzj j;dy dzj j; dx dy dzj j:

    Hence,

    DistM; N max dxj j; dyj j; dzj j; dx dyj j; dx dzj j;dy dzj j; dx dy dzj j:

    Similarly, N0dx; dy; dz is on the triangular face (FiGiLi)due to the symmetry of the cuboctahedron: i dx 0,

    i dy 0, i dz 0, and i dx dy dz.

    880 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 16, NO. 9, SEPTEMBER 2005

    Fig. 8. Vectors defining 3D hexagonal mesh.

    Fig. 9. Addressing scheme in 3D hexagonal mesh.

  • 7/27/2019 Decayeux05-3DHex

    7/10

    So,

    i max dxj j; dyj j; dzj j; dx dyj j; dx dzj j; dy dzj j;dx dy dzj j:

    Similar arguments can be applied in other cases.Then, the distance between M and N verifies the

    following formula:DistM; N max dxj j; dyj j; dzj j; dx dyj j; dx dzj j;

    dy dzj j; dx dy dzj j:ut

    Corollary 2. Denote AiBiCiDiEiFiGiHiIiJiKiLi the cubocta-hedron of side i DistM; N and centered at M (Fig. 9).

    If DistM; N dxj j, then N is on DiEiFi or AiIiJi.IfDistM; N dyj j, then N is on GiHiIi or BiEiKi.IfDistM; N dzj j, then N is on CiDiHi or JiKiLi.IfDistM; N dx dy dzj j, then N is on AiBiCi or

    FiGiLi

    .

    If DistM; N dx dyj j, then N is on DiFiGiHi orAiBiKiJi.

    If DistM; N dx dzj j, then N is on AiCiHiIi orEiFiLiKi.

    If DistM; N dy dzj j, then N is on BiCiDiEi orGiIiJiLi.

    Theorem 10. The diameter of a 3 HMt is Dt 2t 1 %1:34 3

    ffiffiffiffiffiN

    pt.

    Proof. The distance between nodes t 1; 0; 0 and t 1; 0; 0 is equal to

    max

    dx

    j j; dy

    j j; dz

    j j; dx

    dy

    j j; dx

    dz

    j j; dy

    dz

    j j;

    dx dy dzj j 2t 1:We will prove by induction that the distance between anytwo nodes of3 HMt is 2t 1. Clearly, anytwo nodesof 3 HM2 are at distance 2. Suppose that any twonodes of3 HMt1 are at distance 2t 2. Each nodeon the convex hull of3 HMt is at distance 1 of a node of3 HMt1.LetMandNbetwonodesontheconvexhullof3 HMt. There exists two nodes M and N on the convexh ul l o f 3 HMt1 such t hat DistM; M0 1 an dDistN; N0 1. Then,

    DistM; N DistM; M0 DistM0; N0 DistN0; N:

    So, DistM; N 1 2t 2 1 2t 1. tu

    3.2.4 Routing Algorithm

    Our routing algorithm is based on Theorem 9, Corollary 2,

    and our 2D routing algorithm.

    We denoteby Hex0 the 2 HMt of hexagonal boundaryAiBiEiFiGiIi. Hex1 is the 2 HMt of hexagonal boundaryBiCiHiGiLiKi. And, the 2 HMt of hexagonal boundaryAiCiDiFiLiJi iscalled Hex2.Thelinksin Hex0areparallelto the three following directions: {, |, and | {. Thehexagon Hex1 (respectively, Hex2)isbasedon |, k,and

    k | directions (respectively, k, {, and { k). In the

    following algorithm, x0 x, x1 y,and x2 z.Let abean integer (a 2 f0; 1; 2g) usedto refer to Hexa (respectively,equal to Hex0, Hex1, and Hex2). The source node S,first, computes dx, dy, dzand calculatesthe distance ibetween

    Sand the destination node D. By Property 3 and Corollary 2,

    D is on a face of AiBiCiDiEiFiGiHiIiJiKiLi the cuboctahe-

    dron of side i centered at S. Scompares the distance i to dxj j,dyj j, dzj j, dx dyj j, dx dzj j, dy dzj j, dx dy dzj j in order

    tolocatethedestinationnodeDinafaceofthecuboctahedron

    centered at S. Next, we apply twice the procedure ROU-

    TING_PROTOCOLE_2D: in Hexa and then in Hexa 2.For example, suppose that DistS; D dx dzj j i. With-outloss of generalities, wecan suppose that S0; 0; 0.Then, Dis on the square faces

    AiCiHiIi

    or

    EiFiLiKi

    (Corollary 2).

    We use the procedure ROUTING_PROTOCOLE_2D in 2 HMt named Hex2 (Fig. 10) until the intermediate node Nreceives the message. This node N1; 0; 2 is on the layercontaining D parallel to plane OAB. We apply now theprocedure ROUTING_PROTOCOLE_2D from N to D in the

    2 HMt named Hex0.ALGORITHM 3D_ROUTING

    Source node (S)

    dx0xD0x0; dx1xD1x1; dx2xD2x2dist max dx0j j; dx1j j; dx2j j; dx0 dx1j j;

    dx1dx2j j; jdx0dx2j; jdx0dx1 dx2jfor (a

    0 to 2) do

    b a 1 mod 3; c a 2 mod 3if (dist jdxaj) then cptu 0; cptv 0; cptw dxbelse

    if (dist jdxa dxb dxcj) then cptu 0;cptv dxb; cptw 0

    else

    if (dist jdxa dxbj) thenif (jdxcj jdxaj) then cptu 0;

    cptv dxa dxc; cptw dxcelse cptu 0; cptv 0; cptw dxaa a 2 mod 3; b a 1 mod 3;c a 2 mod 3

    endif

    DECAYEUX AND SEM EE: 3D HEXAGONAL NETWORK: MODELING, TOPOLOGICAL PROPERTIES, ADDRESSING SCHEME, AND OPTIMAL... 881

    Fig. 10. Routing between S and D2; 1; 2.

  • 7/27/2019 Decayeux05-3DHex

    8/10

    endif

    endif

    endfor

    if (cptu 0 or cptv 0 or cptw 0) then

    u xa; v xbCall ROUTING_PROTOCOLE_2D

    x0

    a

    u0; x0

    b

    v0; x0

    c

    x

    c

    Send x00; x01; x02; xD0; xD1;xD2;cptu;cptv;cptw;a;DATA

    endif

    All other nodes

    Receive xD0; xD1; xD2; cptu; cptv; cptw; a; DAT Ab a 1 mod 3; c a 2 mod 3if (cptu 0 or cptv 0 or cptw 0) then

    u xa; v xbCall ROUTING_PROTOCOLE_2D

    x0a u0; x0b v0; x0c xcSend x00; x01; x02; xD0; xD1; xD2;

    cptu; cptv; cptw; a; DATAelse

    if (x0 xD0 or x1 xD1 orx2 xD2) then

    dxc xDc xc; dxa xDa xadist max dxcj j; dxaj j; dxc dxaj jif (dist jdxcj) then cptu dxc dxa; cptv 0;

    cptw dxaelse

    if (dist jdxaj) then cptu 0;cptv dxc dxa; cptw dxc

    else cptu dxc; cptv dxa; cptw 0endif

    if (cptu 0 or cptv 0 or cptw 0)u xc; v xaCall ROUTING_PROTOCOLE_2D

    x0a v0; x0b xb; x0c u0Send x00; x01; x02; xD0; xD1; xD2;

    cptu; cptv; cptw; a;DATAendif

    endif

    endif

    Lemma 11. The algorithm 3D_ROUTING realizes the routing

    from a source node to a destination node.

    Proof. Suppose that dist dx0j j dxj j i (a 0). We aregoing to prove that our algorithm routes the messagefrom S to D.

    SD xD0 xS0 { xD1 xS1 | xD2

    xS2 k dx0 { dx1 | dx2 k

    dx { dy | dz k:By Corollary 2, D is onDiEiFi or AiIiJi. Thus, initially,cptu, cptv, cptw are equal to 0, 0, and dx1 dy,respectively. So, u x0 and v x1. The ROUTING_PROTOCOL_2D is applied in Hex0 and the message is

    reaching the intermediate node N. The message goes

    through dyj j links in the | { direction. The node N issuch that SN

    dy | {: We deduce from the previousequality: ND

    dx dy { dz k.Ifthenode Nis not thedestination node (i.e., if x00 xD0 or x01 xD1 or x02 xD2, we apply again the ROU-TING_PROTOCOL_2D. Now, dx

    2

    dzand dx

    0

    dx

    dy. The distance dist between N and D is equal tomax dx0j j; dx2j j; dx0 dx2j j. D is on thetriangularface AiIiJi (respectively, DiEiFi), then i dy 0,i dz 0, i dy dz 0, and dx i (respectively,0 dy i, 0 dz i, 0 dy dz i, and dx i) (inthe Proof of Theorem 9). Hence, if D is on the triangular

    face AiIiJi, i dy dz 0 implies that dx dy dz 0, then dx dyj j ! dzj j. Similarly, if D is on thetriangular face DiEiFi, 0 dy dz i implies thatdx

    dy

    j j !dz

    j j. Besides, dx

    dy and dz have opposite

    signs. So, we deduce that dx dyj j ! dx dy dzj j. Then,the distance between N and D is equal to dx0j j. Thus,cptu, cptv, cptw are equal to 0, dx2 dx0 and dx2,respectively, and u x2, v x0. The message issenttothe node D0 such that: ND0

    dx2 dx0 { dx2 { k. Thus, ND 0dzdxdy { dz { k dx dy { dz kND. So, the node D0 is, in fact, the

    destination node D.Similar arguments are applied in other cases. tu

    Lemma 12. The routing algorithm 3D_ROUTING is optimal.

    Proof. We are going to prove that the message follows ashortest path ofdist links between the source node S and

    the destination node D.

    . Suppose that D is on the triangular face AiIiJi.In this case (see the Proof of Theorem 9),

    i dy 0i dz 0i dy dz 0

    dist dx0j j dx:

    8>>>: 1

    According to the proof of the previous theorem,

    the message goes through:

    dyj j links in the | { directiondz dx dyj j links in the { directiondzj j links in the { k direction:

    2We deduce from (1) and(2) that themessagemoves

    across dydxdydzdzdxdistS; Dlinks, which proves the optimality.

    Similar arguments can be applied in the case of

    D is on other triangular faces.. Suppose that D is on the square face AiBiKiJi

    and dx2j j dx0j j (i.e., dzj j dxj j). In this case(see the Proof of Theorem 9),

    882 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 16, NO. 9, SEPTEMBER 2005

  • 7/27/2019 Decayeux05-3DHex

    9/10

    i dz 00 dx i0 dy i

    dz dxdist dx0 dx1j j dx dy:

    8>>>>>>>:

    3

    According to the proof of the previous theorem,the message goes through:

    dx dzj j links in the { directiondzj j links in the { k directiondyj j links in the | direction:

    4

    We deduce from (3) and(4) that themessagemovesacross dxdzdzdydx dy distS; D links,which proves the optimality.

    . Suppose now that D is on the square faceAiBiKiJi and dx0j j dx2j j (i.e., dxj j dzj j).In this case (see the Proof of Theorem 9),

    i dz 00

    dx

    i

    0 dy idx dz

    dist dx0 dx1j j dx dy:

    8>>>>>>>:

    5

    According to the proof of the previous theorem,the message goes through:

    dxj j links in the { k directiondx dy dzj j links in the | directiondx dzj j links in the k | direction:

    6We deduce from (5) and (6) that the messagemoves across dx

    dx

    dy

    dz

    dx

    dz

    dx

    dy distS; D links, which proves the optimality.Similar arguments can be applied in the case of D is

    on other square faces. tu

    Complexity: As our routing algorithm is based on thedistance (shortest path) between two nodes, its complexity(in the worst case) is O(3

    ffiffiffiffiffiN

    pt) (i.e., equal to the diameter of

    the 3D hexagonal mesh).

    4 CONCLUSION

    In this paper, we presented a new addressing scheme and anoptimal routing algorithm for 2D hexagonal network based

    on thedistance formula in order to useshortest paths from thesource to the destination node. Then, we proposed a3D hexagonal network that can be built with 2D hexagonalmeshes as a natural generalization. We presented sometopological properties, an efficient addressing scheme and anoptimal routing algorithm based on our 2D routing algo-rithm. We should work now on the description of one-to-alland all-to-all broadcasting algorithms in the 3D hexagonalnetwork. Thus, the one-to-all broadcasting algorithm pre-sented in [4] for the 2D hexagonal network may be used as abasis for the 3D hexagonal network. It is very easy to describean all-to-all broadcasting since the 3D hexagonal meshcontains an Hamiltonian cycle. Then, we would like todevelop fault-tolerant algorithms for routing and one-to-all

    broadcasting in 3D hexagonal mesh.

    REFERENCES[1] S.G. Akl, Parallel Computation: Models and Methods. Prentice Hall,

    1997.[2] H. Aykanat and T. Ozguner, A Fault Tolerant Hexagonal Systolic

    Array, Information Processing Letters, vol. 42, pp. 187-196, 1992.[3] U. Black, Mobile and Wireless Networks. Upper Saddle River, N.J.:

    Prentice-Hall PTR, 1996.[4] J. Carle, Etude des proprietes des reseaux dinterconnexion de

    type nids dabeilles, PhD thesis, Universite de Picardie JulesVerne, Faculte de Mathematiques et dInformatique, Amiens,France, 2000.

    [5] J. Carle and J.F. Myoupo, Topological Properties and OptimalRouting Algorithms for Three Dimensional Hexagonal Net-works, Proc. Intl Conf. High-Performance Computing in the Asia-Pacific Region (HPC-Asia 2000), pp. 116-121, 2000.

    [6] J. Carle, J.F. Myoupo, and D. Seme, All-to-All BroadcastingAlgorithms on Honeycomb Networks and Applications, ParallelProcessing Letters, vol. 9, no. 4, pp. 539-550, 1999.

    [7] M.S. Chen, K.G. Shin, and D.D. Kandlur, Addressing, Routingand Broadcasting in Hexagonal Mesh Multiprocessors, IEEETrans. Computers, vol. 39, no. 1, pp. 10-18, Jan. 1990.

    [8] J.W. Dolter, P. Ramanathan, and K.G. Shin, PerformanceAnalysis of Virtual Cut-through Switching in HARTS: AHexagonal Mesh Multicomputer, IEEE Trans. Computers, vol. 40,no. 6, pp. 669-680, June 1991.

    [9] F. Garcia, I. Stojmenovic, and J. Zhang, Addressing and Routingin Hexagonal Networks with Applications for Location Updateand Connection Rerouting in Cellular Networks, technicalreport, manuscript, 2000.

    [10] V.K. Garg and J.E. Wilkes, Wireless and Personal CommunicationSystems. Upper Saddle River, N.J.: Prentice-Hall PTR, 1996.

    [11] D. Gordon, I. Koren, and G.M. Silberman, Embedding TreeStructures in VLSI Hexagonal Arrays, IEEE Trans. Computers,vol. 33, pp. 104-107, 1984.

    [12] D. Milutinovic, V. Milutinovic, and B. Soucek, The HoneycombArchitecture, Computer, vol. 20, no. 4, pp. 81-83, Apr. 1987.

    [13] V. Milutinovic, Mapping of Neural Network on the HoneycombArchitecture, Proc. IEEE, vol. 77, no. 12, pp. 1875-1878, 1989.

    [14] J.-F. Myoupo, H. NDamas, and D. Seme, Hexagonal Mesh: ANew Addressing Scheme and an Optimal Routing Algorithm,Proc. Intl Symp. Parallel and Distributed Computing and Networks,PDCN 02, 2002.

    [15] F. Garcia Nocetti, J. Solano Gonzalez, I. Stojmenovic, and M.Stojmenovic, Addressing and Routing in Higher DimensionalHexagonal Networks, Proc. Intl Conf. Parallel and DistributedProcessing Techniques and Applications, PDPTA-01, pp. 1726-1732,2001.

    [16] F. Garcia Nocetti, J. Solano Gonzalez, I. Stojmenovic, and M.Stojmenovic, Higher Dimensional Hexagonal Networks,

    J. Parallel Distributed Computing, vol. 63, pp. 1164-1172, 2003.[17] B. Parhami, Introduction to Parallel Processing: Algorithms and

    Architectures. Plenium, 1998.[18] Y.R. Potlapalli, Trend in Interconnection Network Topologies:

    Hierarchical Networks, Proc. Intl Conf. Parallel Processing Work-shop, 1995.

    [19] M.J. Quinn, Parallel Computing, Theory and Practice. McGraw-Hill,1994.

    [20] B. Robic and J. Silc, High-Performance Computing on aHoneycomb Architecture, Proc. Second Intl ACPC, Parallel

    Computation Conf., 1993.[21] K.G. Shin, HARTS: A Distributed Real-Time Architecture,Computer, vol. 24, no. 5, pp. 25-35, May 1991.

    [22] I. Stojmenovic, Parallel and Distributed Computing Handbook, chapterdirect interconnection networks, pp. 537-567, A.Y. Zomaya, ed.,1996.

    [23] I. Stojmenovic, Honeycomb Networks: Topological Propertiesand Communication Algorithms, IEEE Trans. Parallel andDistributed Systems, vol. 8, no. 10, pp. 1036-1042, Oct. 1997.

    [24] H.Y. Youn and J.Y. Lee, An Efficient Dictionary Machine UsingHexagonal Processor Array, IEEE Trans. Parallel and DistributedSystems, vol. 7, no. 3, pp. 266-273, Mar. 1996.

    DECAYEUX AND SEM EE: 3D HEXAGONAL NETWORK: MODELING, TOPOLOGICAL PROPERTIES, ADDRESSING SCHEME, AND OPTIMAL... 883

  • 7/27/2019 Decayeux05-3DHex

    10/10

    Catherine Decayeux received the DEA (Di-plome dEtudes Approfondies) in computerscience from the Universite de Picardie JulesVerne in 2002. Currently, she is a PhD student incomputer science at the University of PicardieJules Verne, France. She has also been a highschool professor of mathematics since 1991 andshe received the agregation (highest teachingdiploma in France) of mathematics in 2000. Her

    research interest areas are interconnection net-works and mobile computing.

    David Seme received the DEA (DiplomedEtudes Approfondies) in computer sciencefrom the Universite de Picardie Jules Verne in1995. He received the PhD degree in computerscience from the University of Picardie in 1999.Currently, he is an associate professor ofcomputer science with the faculty of mathe-matics and computer science at the University ofPicardie-Jules Verne and a member of the

    Computer Science Laboratory LaRIA. Dr. Semehas served as member of program committee of the InternationalConference on Software Engineering, Artificial Intelligence, Networkingand Parallel/Distributed Computing, Madrid, Spain (SNPD 02), Interna-tional Conference on Computer and Information Science, Seoul, Korea(ICIS 02), and the Sixth International Conference on Communications inComputing, CIC2005, Las Vegas (2005). His research interest areas areparallel algorithms and architectures, VLSI design, high performancecomputing, neural networks, interconnection networks and mobilecomputing.

    . For more information on this or any other computing topic,please visit our Digital Library at www.computer.org/publications/dlib.

    884 IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, VOL. 16, NO. 9, SEPTEMBER 2005