Lecture 4 Network Topologies For Parallel Architecture
Lecture 4 Network Topologies For Parallel Architecture
Introduction: 1-18
Examples (Cont.)
Distributed-memory MIMD systems Distributed-memory MIMD systems
• The Alex AVX 2 • The Intel Paragon XP
• The Avalon A12 • The Matsushita ADENART
• The C-DAC PARAM 9000/SS • The Meiko Computing Surface 2
• The Cray Research Inc. T3E • The nCUBE 3
• The Fujitsu AP1000 • The NEC Cenju-3
• The Fujitsu VPP300 series • The Parallel Computing Industries
• The Hitachi SR2201 series system
• The HP/Convex Exemplar SPP-1200 • The Parsys TA9000
• The IBM 9076 SP2 • The Parsytec GC/Power Plus
Introduction: 1-19
DM-MIMD Routing Mechanism
• Routing mechanism determines the path a message takes
through network to reach from source to destination node.
• Data and task decomposition have to be dealt explicitly!
• Topology and speed of the data paths are crucial and have to
be balanced with costs.
• Routing can be classified as:
Minimal
Non-minimal
• It can also be classified as:
Deterministic routing
Adoptive routing
Linear Arrays
• In a linear array, each node has two neighbors, one to its left
and one to its right.
• If the nodes at either end are connected, we refer to it as a 1-D
torus or a ring.
K-d Meshes
• A generalization has nodes with 4 neighbors, to the north,
south, east, and west.
• A further generalization to d dimensions has nodes with 2d
neighbors (i.e., 6 neighbors in case of 3d cube).
3d-weather modeling, 3d-structure modeling
Hypercube
• For an hypercube with 2d nodes the number of steps to be
taken between any two nodes is at most d (logarithmic grow)
d = log p (dimensions = log(nodes))
• The distance between any two nodes is at most log p.
• Each node has log p neighbors.
Hypercube (Cont.)
• Rule of thumb: “d-dimensional hypercube can be constructed
by connecting corresponding nodes of two different (d-1)-
dimensional hypercubes”
Hypercube (Cont.)
• The processors are numbered with 3-bit binary numbers which
represent the X-Y-Z coordinates
• The distance between two nodes is given by the number of bit
positions at which the two nodes differ.
Tree based Networks
• A tree network is one in which there is one path between any
pair of nodes
• Linear arrays and star-connected networks are special cases of
tree-based networks
• In static tree network, each node represent a processing
element
• In dynamic tree network, leaf nodes represent processing
element while internal nodes are switching elements
Tree based Networks (Cont.)
• The source node sends the message up the tree until it reaches
the node at the root of the smallest subtree containing both
the source and destination nodes.
• Trees can be laid out in 2D with no wire crossings. This is an
attractive property of trees.
• The distance between any two nodes is no more than 2logp.
Tree based Networks (Cont.)
Fat Tree
• Another topology is the “fat tree”
• In a tree, a node can speak to another node passing through the root so we
have higher traffic at the root node.
• Fat tree amends this providing more bandwidth (with multiple connections) in
the higher levels of the tree
• N-ary fat tree is when the levels towards the root have N times the number of
connections in the level below it
Evaluating Static Interconnections
The parameters to evaluate a static interconnection:
• Cost: Usually depends on number of links for communication.
E.g., cost for linear array is p-1.
Lower values are favorable
• Diameter: The shortest distance between the farthest two
nodes in the network. The diameter of a linear array is p − 1.
Lower values are favorable
• Bisection Width: The minimum number of wires you must cut
to divide the network into two equal parts. The bisection
width of a linear array is 1.
Higher values are favorable
Evaluating Static Interconnections (Cont.)
• Arc-connectivity: The minimum number of arcs or links that
must be removed from the network, to break the network into
two disconnected networks
Higher value are desirable
It is minimum number of the links that must be cut to separate the
single node from the network
Higher values means, that incase of link failure there are multiple
other routes to the node.
Arc-connectivity of linear array is 1 and 2 for ring.
Evaluating Static Interconnections (Cont.)
Additional Resources
Book: Introduction to Parallel Computing by Ananth Grama and
Anshul Gupta
• Chapter 2: Parallel Programming Platforms
Section 2.4.3: Network Topologies
Section 2.6: Routing Mechanisms for Interconnection Networks
Thank You!