European Journal of Scientific Research
ISSN 1450216X Vol.22 No.2 (2008), pp.457468
© EuroJournals Publishing, Inc. 2008
http://www.eurojournals.com/ejsr.htm
HexCell: Modeling, Topological Properties and
Routing Algorithm
Ahmad Sharieh
Computer Science Department
King Abdulla II School for Information Technology
University of Jordan
Email: sharieh@ju.edu.jo
Mohammad Qatawneh
Computer Science Department
King Abdulla II School for Information Technology
University of Jordan
Email: drqat@yahoo.com
Wesam Almobaideen
Computer Science Department
King Abdulla II School for Information Technology
University of Jordan
Email: wesmoba@ju.edu.jo
Azzam Sleit
Computer Science Department
King Abdulla II School for Information Technology
University of Jordan
Email: azzam.sleit@ju.edu.jo
Abstract
This paper introduces a new class of interconnection networks referred to as Hex
Cell. Amongst the attractive features of the proposed topology is the embedding capability
of topological structures such as linear array, ring, tree and mesh. Hexcell employs an
efficient routing algorithm which requires less knowledge of the network interconnections
and brings about less communication cost. These features make it a suitable candidate for
general purpose applications. HexCell is expandable in an incremental fashion with
minimal cost due to its recursive structure. The comparison of HexCell with other
networks of interests in terms of degree, diameter, and networkcost establishes merits
when compared with others.
Keywords: HexCell, Interconnection Topology, Parallel Computing, Routing
HexCell: Modeling, Topological Properties and Routing Algorithm 458
1. Introduction
Parallel processing elements provide high processing power for solving problems in major application
areas such as image processing and scientific computing [1, 2, 9,10, 11]. The underlying
communication network and the matching of the algorithm with the network structure strongly affect
the performance of parallel machines. Consequently, some features in the network of parallel machine
are highly desirable such as minimal communication cost, efficient routing, and the capability of
embedding topological structures such as ring, linear array, tree, and mesh.
Among the wide variety of interconnection networks structures proposed for parallel computing
systems is hypercube which received much attention due to the attractive properties inherited in their
topology [3]. The embeddability, symmetry, regularity, strong resilience, and simple routing have
made hypercube superior to many other multicomputer networks. However, in a hypercube structure,
the number of communication ports and channels per processor increases with the increase of the
network size which is a disadvantage of the structure. Ideally, we would like to construct a new
network that combines features such as less communication, efficient routing and capability of
embedding other static topologies. This motivates us to develop a new interconnection network to meet
the demands of highly parallel systems.
Although, the hexagon topology was addressed as a 3D hexagonal network [4], the node degree
and number of links are still considered high. In this paper, we introduce a new network called Hex
Cell which will have better node degree and number of links than the existing topologies. We compare
the proposed structure with other know topologies such as 3D hexagonal network, linear array, ring,
binary tree, and hypercube as shown in Table I.
Section 2 presents the features of HexCell and compares them with those of other topologies.
Section 3 presents the routing algorithm of HexCell and section 4 summarizes and concludes the
paper.
2. System Architecture
Throughout this paper, an interconnection network will be viewed as an undirected graph, in which the
vertices correspond to processors and edges correspond to the bidirectional communication links
between processing elements. We propose a hexcell network based on the hexagon topology.
2.1. Definition of HexCell Network
A HexCell network with depth d is denoted by HC(d) and can be constructed by using units of
hexagon cells, each of six nodes. A HexCell network with depth d has d levels numbered from 1 to d,
where, level 1 represents the innermost level corresponding to one hexagon cell. Level 2 corresponds
to the six hexagon cells surrounding the hexagon at level 1. Level 3 corresponds to the 12 hexagon
cells surrounding the six hexagons at level 2 as shown in figure 1. The levels of the HC(d) network are
labeled from 1 to d. Each level i has N
i
nodes, representing processing elements and interconnected in
a ring structure.
459 Ahmad Sharieh, Mohammad Qatawneh, Wesam Almobaideen and Azzam Sleit
Figure 1: (a) HC (one level) (b) HC (two levels) (c) HC (three levels)
Lemma 1:
In a HexCell network, the number of nodes at level i is:
N
i
= 6(2i – 1)
Proof:
Using the previous definition of HC(d), it can be easily seen that at level 1, N
1
= 6 since there is a
single hexagon cell with six vertices. Level 2 introduces six hexagon cells (one at each side of the
hexagon at level 1). It can be seen that level (i+1) has 12 nodes in addition to corresponding nodes to
those at level i. Therefore,
N
i
= 6+ (i – 1)* 12 = 6(2i – 1)
■
Lemma 2:
The total number of nodes in a HexCell network HC(d) is:
N = 6d
2
Proof:
Using Lemma 1, the total number of nodes in a Hex_Cell network with d levels can be expresses as
follows:
(1)
Therefore,
N = 12 ∑ i – 6 ∑ 1 = 6d(d+1) – 6d = 6d
2
■
Equivalently, we can conclude that the number of levels of HC needed to accommodate N
nodes is estimated to be √(N/6).
HexCell: Modeling, Topological Properties and Routing Algorithm 460
Table 1: Comparison of parameters of several topologies.
Topology Name
Maximum
Node Degree
Diameter
Number of
Links
Bisection
Bandwidth
Remarks on network size
HexCell 3 4√(N/6)1 3N/2 3√(N/6) 2√(N/6) N is the number of nodes
Hypercube log
2
N log
2
N log
2
N (N/2) N/2 N is the number of nodes
Binary Tree 3 2(log
2
N 1) N1 1 N is the number of nodes,
Linear Array 2 N1 N1 1 N nodes
Ring 2 N/2 N 2 N nodes
2DTorus 4 2(r/2) 2N N/2 r × r torus where r = √N
CubeConnected Cycles 3 2k1+[k/2] 3N/2 N/(2k) N= k × 2
k
nodes with a cycle length k ≥ 3
3D Hexagonal 6 1.16 √N 3N 8.66√N 2.32 √N N is the number of nodes
Node Degree: The node degree on an interconnection network is defined as the maximum number of
edges (links or channels) that a node can have in the network. It is a desirable feature in an
interconnection that the number of ports does not grow at the same rate as a function of the number of
nodes in the network. In other words, a network topology which secures constant node degree is highly
desirable. Constant node degree facilitates modularity in building blocks for scalable systems [5,7,8]. It
can be easily seen that the node degree of a HexCell with depth 1 (i.e. HC(1)) is 2 and that for HC(d)
is 3, for d > 1. Figure 2 compares node degree against network size of the HC with those of hypercube,
linear array, binary tree and 2Dtorus. It is worth noting that the degree of the HC is constant when d >
1 and less than the degree of hypercube and falls in between of linear array and 2dtorus.
Figure 2: Degree against the network size
Diameter: The diameter (D) of a network is the maximum shortest path between any two nodes
[5,7,8]. The path length is measured by the number of links traversed. The network diameter indicates
the maximum number of distinct hops between any two nodes, thus providing figure of communication
merit for the network. Therefore, the network diameter should be as small as possible. It will not only
reduce the traveling time for messages, but also minimize message density in the links of the network.
The diameter of HC(d) is 4d1. Figure 3 compares the diameter against network size of the HC with
that of hypercube, linear array, binary tree and 2Dtorus respectively.
461 Ahmad Sharieh, Mohammad Qatawneh, Wesam Almobaideen and Azzam Sleit
Figure 3: Diameter against network size
Number of Links: The number of links in HC(d) is quantified in the following lemma/
Lemma 3:
The number of links in HC(d) is L = 9d
2
– 3d
Proof:
The number of nodes of HC at level i is N
i
= 6(2i 1). Each node represents a processing element and
interconnected in a ring topology. The number of links at each level is 6(2i – 1) + 6(i1), or
equivalently,
L
i
= 18i – 12 (2)
Consequently, the total number of links in HC(d), L is equal to:
(4)
Figure 4 compares the number of links against network size of the HC with that of hypercube,
and binary tree. As shown in Figure 5, we can see that the total number of links for HC is less than
hypercube but greater than binary tree.
HexCell: Modeling, Topological Properties and Routing Algorithm 462
Figure 4: The number of links against network size
Bisection width: when a given network is cut into two equal halves, the minimum number of edges
(channels) along the cut is called the channel bisection width b [5,7,8]. In case of a communication
network, each edge corresponds to a channel with w bit wires. Therefore, the wire bisection width is B
= b*w. This parameter B reflects the wiring density of a network. When B is fixed, the channel width
(in bits) w=B/b. Thus, the bisection width provides a good indicator of the maximum communication
bandwidth along the bisection of a network.
Lemma 4:
The bisection of HC(d) is 2d.
Proof:
It follows from the previous discussion. ■
3. Routing in HexCell Network
Communication or data routing is the most fundamental function of interconnection networks. Data
routing is the act of moving information across an interconnection network from a source to a
destination [6]. Various routing modes have been designed. These modes include pointtopoint
routing, onetomany broadcasting, manytomany broadcasting, personalized communication and data
gathering. This paper focuses on developing optimal pointtopoint routing algorithm for HexCell
networks. Routing for this mode will be shown to be optimal in time and space.
3.1. PointtoPoint Routing for HC.
An optimal routing algorithm in any network would route information or message from a source to a
destination along a shortest path. The routing algorithm can be centralized or distributed. In centralized
routing, a single processing element determines the shortest path form a given source node to a given
destination node. Then, the message is sent along that path. Finding the shortest path by a single central
processing element is very slow and leads to a major bottleneck. On the other hand, if every source
node takes the responsibility of computing the shortest path to the destination and sends that path along
with the message to guide it through the intermediate nodes, the bottleneck problem is avoided, but
traffic is increased and routing remains relatively slow.
In distributed, routing, however, all intermediate nodes on the shortest path cooperate to find
the shortest path using the destination address. Therefore, each intermediate node needs only the
463 Ahmad Sharieh, Mohammad Qatawneh, Wesam Almobaideen and Azzam Sleit
destination address to determine which neighbor falls on the shortest path to a given destination. In the
routing algorithm, each intermediate node determines, in constant time, which of its neighbors will
receive the message.
The routing of a message can be viewed as a sequence of changes made on the source address
label to become the destination address label. These changes are done at every intermediate node on
the path. When the message is received by an intermediate node, it will consider itself as a new source.
Due to the recursive structure of the HexCell, routing can be done easily in constant time and space.
3.2. Proposed Routing Algorithm
In order to explain the following algorithm, we use the level numbering scheme as follows. Each node
in the HC is identified by a pair (X.Y), where X denotes the line number in which the node exists, and
Y denotes the location of the node in the line as in figure 5. A node with the address 1.1 is the first
node that exists at line number 1. 1.2 refers to the second node that exists at line number 1, and so on.
Figure 5: Addressing nodes in HC.
In the proposed routing algorithm for HC as shown in Figure 6, the movement from one node to
another node can be done by using one of the following three cases:
CASE 1:
If (X
s
> X
d
)
moveUp(X
s
,Y
s
,X
d
,Y
d
).
Here we have two directions, moveUp/LefttoRight, and moveUp/ RighttoLeft.
CASE 2:
If (
X
s
<
X
d
)
moveDown
(X
s
,Y
s,
X
d
,Y
d
)
Here we have two directions, moveDown/ LefttoRight and moveDown/RighttoLeft.
CASE 3:
If (X
s
= X
d
)
moveHorizontal(X
s
,Y
s
, X
d
,Y
d
).
Here also we have two directions, moveHorizontal/LefttoRight and moveHorizontal/Right
toLeft.
Where, X
s
is the line number of source node, Y
s
is the location of source node in line the
number, X
d
is the line number of destination node, and Y
d
is the location of destination node in the line
number. One of the previous cases will be called recursively until the destination has been reached.
HexCell: Modeling, Topological Properties and Routing Algorithm 464
Figure 6: Routing algorithm for HC(d)
3.3. Discussions via examples
The following examples explain the above routing cases. For this purposed, we consider a network of a
Hexcell topology with 4 levels; i.e. HC(4) as shown in Figure 7.
465 Ahmad Sharieh, Mohammad Qatawneh, Wesam Almobaideen and Azzam Sleit
Figure 7: HC(4) topology with labeled nodes and levels
moveUp / LefttoRight
Let (X
s
,Y
s
) = (5,6) be the source node and (X
d
,Yd) = (3, 9) be the destination node. When executing
the routing algorithm, CASE 1 will be applied (moveUp / LefttoRight). To reach the destination, the
algorithm goes through six steps; i.e., (5,6)→ (5,7) →(4,7) → (4,8) → (3,7) → (3,8) → (3,9), as shown
in Figure 8.
Figure 8: MoveUp/ Lefttoright
moveUp / RighttoLeft
Let (8,9) and (4,8) be the source and destination nodes respectively. CASE 1 of the routing algorithm
will be applied (i.e., moveUp / RighttoLeft) going through the following steps: (8,9)→ (7,10)
→(7,9) → (6,10) → (6,9) → (5,10) → (5,9) → (4,9) → (4,8), as shown in Figure 9.
HexCell: Modeling, Topological Properties and Routing Algorithm 466
Figure 9: MoveUp / RighttoLeft
moveDown/ LefttoRight
Let (1,7) be the address of the source node and assume that it is trying to send a message to the
destination node (4,12). Applying the algorithm in Figure 7 will trigger CASE 2 (moveDown / Leftto
Right). To reach the destination the algorithm passes through five steps; i.e., (1,7)→ (2,8) →(2,9) →
(3,10) → (3,11) → (4,12), as shown in Figure 10.
Figure 10: moveDown / Lefttoright.
moveDown / RighttoLeft
Let (4,9) and (7,4) be the address of the source and destination nodes respectively. CASE 2 of the
routing algorithm (i.e., moveDown / RighttoLeft) will bring about the following path: (4,9)→ (5,9)
→(5,8) → (6,7) → (6,6) → (7,5) → (7,4), as shown in Figure 11.
Figure 11: movedown / RighttoLeft.
467 Ahmad Sharieh, Mohammad Qatawneh, Wesam Almobaideen and Azzam Sleit
moveHorizontal / LefttoRight
Let (2,4) and (2,7) be the source node and destination nodes. Case 3 (i.e., moveHorizontal/Leftto
Right) will be triggered taking us through the following path: (2,4)→ (2,5) →(2,6) → (2,7), as shown
in Figure 12.
Figure 12: Horizontal / LefttoRight
moveHorizontal / RighttoLeft
For the source (X
s
,Y
s
) = (8,4) and destination (X
d
,Y
d
) = (8,1), CASE 3 will be used. Applying the
algorithm, the case will be 3 (moveHorizontal/RighttoLeft). To reach the destination we applied the
algorithm and passed through 3 steps, (8,4)→ (8,3) →(8,2) → (8,1), as shown in figure 13.
Figure 13: moveHorizontal / RighttoLeft
4. Conclusion
This paper introduces a new interconnection topology called HexCell. The proposed architecture has
some of the interesting characteristics of hypercube, binary tree, linear array, star and 2Dtorus. The
degree and total number of links of the HC is less than those of hypercube. In hypercube, the node
degree of each node is a logarithmic function of the total number of nodes, which is a drawback of the
topology. Consequently, the hypercube topology is not a good candidate for interconnection network
for a very large parallel computer that might contain hundreds of thousands of nodes due to limitations
concerning integrated circuit technology and port number. We proposed a new interconnection network
suitable for large parallel computers, that can connect hundreds of thousands nodes with 3 links per
node.
The proposed topology has the ability to efficiently simulate programs written for architectures
such as linear arrays, rings and meshes. The HexCell topology can easily embed these structures into
it. Also, the paper proposed an efficient routing algorithm for HC which requires no detailed
knowledge of the network, and can be utilized in wide range network applications such as mobile
systems, and AdHoc mobile networks.
HexCell: Modeling, Topological Properties and Routing Algorithm 468
References
[1] Boxer, L. and Miller, R., 1988. "Dynamic Computational Geometry on Meshes and
Hypercubes", Proceedings of the 1988 International Conference on Parallel Processing, St.
Charles, Illinois, pp.323330.
[2] Catherine Decayeux and David Seme, 2005. "3D Hexagonal Network: Modeling, Topological
Properties, Addressing Scheme, and Optimal Routing Algorithm", IEEE Transaction on
Parallel and Distributed Systems, Vol. 16, No. 9, pp 875884.
[3] Chan, T. F. and Saad, Y., 2002. "Multigrid Algorithms on the Multiprocessor", IEEE
Transactions on Computers, Vol. C35, No. 11, November, pp. 969977.
[4] Day, K. and A. AlAyyoub, 2002. "Topological Properties of OTISNetworks", IEEE Trans.
Parallel and Distributed Systems, Vol. 13, No. 4, pp. 359366.
[5] Della Vecchia, G. and C. Sanges, 1995. "A Recursively Scalable Network for VLSI
Implementation", Future Generation Computer Systems, pp. 235243.
[6] Ghose, K. and K.R. Desai, 1995. "Hierarchical Cubic Network", IEEE Trans. Parallel and
Distributed Systems, Vol. 6, No. 4, pp. 427435.
[7] Kai Hwang, 1993. "Advanced Computer Architecture: Parallelism, Scalability,
Programmability:, McGrawHill Book Co. International Edition.
[8] Parhami, B., 1999. "Introduction to Parallel Processing: Algorithms and Architectures",
Plenum.
[9] Parhami, 2005. "Computer Architecture: From Microprocessors to Supercomputers", Oxford.
[10] Qatawneh Mohammad, 2006. "Adaptive Fault Tolerant Routing algorithm for TreeHypercube
Multicomputer", Journal of Computer Science 2 (2): pp124126.
[11] Y Saad and M H Schultz, 1998. "Topological Properties of Hypercubes", IEEE Transaction
Computers, Vol. 37, pp 867.
Enter the password to open this PDF file:
File name:

File size:

Title:

Author:

Subject:

Keywords:

Creation Date:

Modification Date:

Creator:

PDF Producer:

PDF Version:

Page Count:

Preparing document for printing…
0%
Σχόλια 0
Συνδεθείτε για να κοινοποιήσετε σχόλιο