09.08.2013 Views

Advanced Computer Architecture Exercise Interconnection Networks

Advanced Computer Architecture Exercise Interconnection Networks

Advanced Computer Architecture Exercise Interconnection Networks

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Advanced</strong> <strong>Computer</strong> <strong>Architecture</strong><br />

<strong>Exercise</strong><br />

Prof. Dr.-Ing. Axel Hunger<br />

Department of Electrical Engineering and Information<br />

Technology<br />

Institute for <strong>Computer</strong> Engineering.<br />

Dipl.-Ing. Kevin Moheb<br />

Institute for <strong>Computer</strong> Engineering<br />

BB 321, Tel: 0203 – 379 - 3200<br />

E-mail: kevin.moheb@uni-due.de<br />

<strong>Interconnection</strong> <strong>Networks</strong><br />

27.06.2008<br />

1


Class of networks scaling with N<br />

Logical Properties:<br />

◦ distance, degree<br />

Physical properties<br />

◦ length, width<br />

VLSI technology determines switch degree<br />

Fully Connected Network:<br />

• Every node is connected to all other nodes using N- 1 direct links<br />

• N(N-1)/2 Links -> O(N2 ) complexity<br />

• NNode d DDegree: N -1 1<br />

• Diameter = 1<br />

• Average Distance = 1<br />

• Bisection Width = (N/2) 2<br />

Chain (Linear Array):<br />

◦ N-1 Links -> O(N) complexity<br />

◦ Node Degree: 1-2<br />

◦ Diameter = N -1<br />

◦ Average Distance = (N+1)/3 ~ N/3<br />

◦ Bisection Width = 1<br />

Ring (1-D Torus):<br />

◦ N bi-directional Links -> O(N) complexity<br />

◦ Node Degree: 2<br />

◦ Diameter<br />

N is even: N/2<br />

N is s odd: odd (N-1)/2 ( )/<br />

◦ Average Distance:<br />

N is even: N2 /4/(N-1)<br />

N is odd: (N+1)/4<br />

~ N/4<br />

◦ Bisection Width = 2<br />

3<br />

4<br />

27.06.2008<br />

2


2D Mesh and Torus<br />

• Mesh:<br />

– 2k(k-1) links<br />

– Node degree: 2-4<br />

– Diameter: 2(k-1)<br />

– Average distance?<br />

– Bisection width: k<br />

• Torus:<br />

– 2k2links – NNode d ddegree: 4<br />

– Diameter: k - 1<br />

– Average distance?<br />

– Bisection width: 2k<br />

1D mesh<br />

d-dimensional mesh or torus :<br />

– N = kd-1 x kd-2 ...x k1 x k0 nodes<br />

– Described by d-vector of coordinates (id-1, ..., i0) – Where 0 < ij ≤ kj for 0 ≤ j ≤ d-1<br />

d-dimensional k-ary mesh: N = kd – k = d 1D torus 2D mesh 2D torus 3D mesh<br />

√N<br />

– Described by d-vector of radix k coordinate.<br />

– Diameter = d·(k -1)<br />

d-dimensional k-ary torus:<br />

– Edges wrap around, every node has degree 2d and is<br />

connected to nodes that differ by one (mod k) in every<br />

dimension.<br />

– d-dimensional k-ary cube: uni-directional links<br />

5<br />

6<br />

27.06.2008<br />

3


Distance:<br />

◦ Relative distance: R = (b d-1 -a d-1, ... , b 0 -a 0 )<br />

◦ Traverse r i = b i -a i hops in each dimension<br />

i i i p<br />

Average Distance:<br />

◦ d x k/3 for mesh<br />

◦ d x k/4 for torus<br />

Degree:<br />

◦ d to 2d for mesh<br />

◦ 2d for torus<br />

Bisection width:<br />

◦ k d-1 for mesh<br />

◦ 2k d-1 for torus<br />

1824 node Paragon: 16 x 114 array<br />

7<br />

8<br />

27.06.2008<br />

4


Also called binary n-cubes<br />

Dimension = n = log2N Number of nodes =N=2n Number of nodes = N = 2<br />

Diameter: O(log2N) hops<br />

Good bisection width: N/2<br />

Number of bidirectional links: N·(log2N)/2 Node degree is n = log2N 0-D 1-D 2-D 3-D<br />

4-D<br />

0010<br />

0110<br />

0100<br />

0011<br />

0000 0001<br />

0111<br />

0101<br />

1010<br />

1110<br />

1011<br />

1100<br />

1000 1001<br />

1111<br />

1101<br />

5-D<br />

9<br />

10<br />

27.06.2008<br />

5


Trees<br />

• Diameter and average distance are logarithmic.<br />

– kk-ary ary tree tree, height d =log = logk N<br />

• Fixed degree k.<br />

• Low bisection width = 1<br />

Fat Tree<br />

Fatter higher bandwidth links (more connections in reality)<br />

Bisection width scales with number of nodes N.<br />

11<br />

12<br />

27.06.2008<br />

6


Switch<br />

0<br />

1<br />

Either connects the same set<br />

of processors or connects<br />

processors with memory.<br />

Complexity: N/2 x log 2 N<br />

Exactly one route from any<br />

source to any destination node<br />

Same length for all routes<br />

Bisection: N/2<br />

Diameter: log 2 N<br />

Bus is shared by processors and memories.<br />

Bus provides uniform access to shared memory (UMA).<br />

When Wh bus b saturates, performance f of f system degrades. d d<br />

For this reason, bus-based systems do not scale to<br />

more than 30-40 processors.<br />

memory … memory<br />

bus<br />

processor processor<br />

…<br />

13<br />

14<br />

27.06.2008<br />

7


Crossbar switch connects m processors and n memories<br />

with distinct paths between each processor/memory pair<br />

Crossbar provides uniform access to shared memory (UMA)<br />

m·n switches required for m processors and n memories<br />

Crossbar scalable in terms of performance but not in terms<br />

of cost<br />

P1<br />

P2<br />

P3<br />

P4<br />

P5<br />

M1<br />

M2 M3 M4 M5<br />

Topology Degree Diameter Ave Dist Bisection Ave Dist N=1024<br />

1D Array 2 N-1 ~ N / 3 1 342<br />

1D Ring 2 N/2 (even) ~ N/4 2 256<br />

2D Mesh 2-4 2 (N1/2 -1) 2/3 N1/2 N1/2 21<br />

2D Torus 4 N1/2 1/2 N1/2 2N1/2 16<br />

Hypercube n=log2 N n ~ n/2 N/2 5<br />

All have some bad permutations<br />

◦ Many popular permutations are very bad for meshes<br />

(transpose)<br />

◦ Randomness in wiring or routing makes it hard to find a<br />

bad one!<br />

15<br />

16<br />

27.06.2008<br />

8


Wide links, smaller routing delay<br />

Tremendous variation<br />

d = 2 or d = 3<br />

◦ Short wires, , easy y to build<br />

◦ Many hops, low bisection bandwidth<br />

◦ Requires traffic locality<br />

d >= 4<br />

◦ Harder to build, more wires, longer average length<br />

◦ Fewer hops, better bisection bandwidth<br />

◦ Can handle non-local traffic<br />

17<br />

18<br />

27.06.2008<br />

9


Wire density tends to be very high near the bisection and<br />

low near the perimeter.<br />

2D mesh has uniform density throughout.<br />

It requires also longer links. Cycle time for network<br />

increases as the logarithm of the wire length.<br />

Rich set of topological alternatives with deep relationships<br />

Design point depends heavily on cost model<br />

◦ Nodes, pins, area, ...<br />

◦ Wire length or wire delay metrics favour small dimension<br />

◦ Long (pipelined) links increase optimal dimension<br />

19<br />

20<br />

27.06.2008<br />

10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!