Sie sind auf Seite 1von 16

Parallel Processing

sp2016
lec# 11
Dr M Shamim Baig

1.1

Routing Algorithms & usage


Examples:

1.2

Static INs:
Routing Algorithms & usage
Examples

1.3

Self-Routing Algorithm & Usage Example:


2-D/ 3-D/ k-d mesh(non-wrap)

Routing-Path (on/ off) multidim-mesh: (a) 2-D mesh with no wraparound;


(b) 3-D mesh with no wraparound
1.4

Self-Routing Algorithm & Usage Example:


Path (on/ off) Hypercube):
The distance between any two nodes is given by number of bit positions in which two nodes binary labels differ.

Routing-Path (on/off network) from node Ps (010) to node Pd (111)


in a three-dimensional hypercube using self-routing algorithm

1.5

Function based Routing Algorithm & usage


example for Hypercube: Path (on/off network)
Cube Function: Ci(x)=
Ci(xd-1 xd-2 xi . x2 x1 x0)= (xd-1 xd-2 xi. x2 x1 x0 )

where x is d-bit binary node-id for p-node cube, # of dim =d= logp, i is dim index

Dynamic INs:

Routing Algorithms & usage


Examples:

1.7

Self-routing approach for Omega-MIN


Let S be the binary representation of the source
and D be that of the destination processor.
The data traverses the link to the first switching
node. If the most significant bits of S and D are
the same, then the data is routed in pass-through
mode by the switch else, it switches to crossover.
This process is repeated for each of the log p
switching stages di.
Formal Self-Routing Algorithm for Omega-MIN
& its usage example ????????
1.8

Self-routing Algorithm & Usage Example


in (8 x 8 Omega-MIN)
d2

d1

do

Routing-Paths (on MIN): two route-paths (010-to-111 & 110-to-100) can be


drawn ON the MIN with ISC.

Omega MIN:
Function (ISC & SW) based Routing Approach
Let S be the binary representation of the source
and D be that of the destination processor.
The data traversing the link is determined by the
Shuffle ISC-function.
The stage switching is determined by Exchangefunction which is applied only when Si & Di bits for
the stage differ.
This process is repeated for each of the log p
switching stages di [from (logp-1) to 0]
Formal Function based routing Algorithm for
Omega-MIN & its Usage Example?????
1.10

Shuffle & Exchange Functions


used in Omega-MIN
Shuffle is used as (ISC-Function) & Exchange is
used as (SW-function) in Omega MIN
If x is positionID in binary for (p x p), d-stage MIN where d= logp ;

x= xd-1 xd-2 . x2 x1 x0
Shuffle Function: S(x)= rotate-left-x
S(xd-1 xd-2 . x2 x1 x0 )= (xd-2 xd-3 . x1 x0 xd-1 )
Exchange Function: E(x)=
E(xd-1 xd-2 . x2 x1 x0)= (xd-1 xd-2 . x2 x1 x0 )
1.11

Function based routing Algorithm Usage


examples in (8 x 8 Omega-MIN)
Will Work even when all MIN links/SWs not
drawn
stageo
stage2
stage1

Routing-Paths (on/ off MIN): two route-paths (010-to-111 & 110-to-100) can
be drawn ON the MIN without ISC. How about path OFF the MIN?

Interconnection Functions

Cube function (C)done


Shuffle function (S).done
Exchange function (E).done
Plus-Minus-2i function (PM2I)
Butterfly function (B)

1.13

Plus-Minus-2i (PM2i) Network

Used in Prefix-sum computing (later)

1.14

Butterfly-Function

Butterfly Function: B(x)=


B(xd-1 xd-2 . x2 x1 x0)= (x0 xd-2 . x2 x1 xd-1 )
where x is d-bit binary number where d= logp,

B(110)= 011
Butterfly MIN is used in FFT computation
1.15

Important points for Routing

Routing in Static vs Dynamic


interconnection network.
Difference between Self-routing vs Function
(ISC & SW) based routing
Difference between Routing Path identification:
Difference between

ON the network (static/dynamic)


OFF the network (Separate, not on the network)

Apply(use) vs Write (give)


Routing Algorithm

Difference between

1.16

Das könnte Ihnen auch gefallen