The Turn Model For Adaptive Routing

36
1 The Turn Model for The Turn Model for Adaptive Routing Adaptive Routing Christopher J. Glass Christopher J. Glass Lionel M. Ni Lionel M. Ni

description

 

Transcript of The Turn Model For Adaptive Routing

Page 1: The Turn Model For Adaptive Routing

11

The Turn Model for Adaptive The Turn Model for Adaptive RoutingRouting

Christopher J. Glass Christopher J. Glass Lionel M. NiLionel M. Ni

Page 2: The Turn Model For Adaptive Routing

22

SummarySummary

Introduction to Direct Networks.Introduction to Direct Networks.Deadlocks in Wormhole Routing.Deadlocks in Wormhole Routing.System Model.System Model.Partially Adaptive Routing Algorithms inPartially Adaptive Routing Algorithms in

2D Meshes.2D Meshes. p-cube routing in Hypercube p-cube routing in Hypercube Analysis.Analysis. Conclusion and Future Work.Conclusion and Future Work.

Page 3: The Turn Model For Adaptive Routing

33

What is Direct Network?What is Direct Network?

Each node has a point-to-point, or direct, connection to Each node has a point-to-point, or direct, connection to some number of other nodes.some number of other nodes.

Offers massive parallelism and scalability.Offers massive parallelism and scalability.

Popular architecture for constructing massively parallel Popular architecture for constructing massively parallel computers.computers.

Communicates by passing messagesCommunicates by passing messages

Page 4: The Turn Model For Adaptive Routing

44

Generic ArchitectureGeneric Architecture

Page 5: The Turn Model For Adaptive Routing

55

Evaluation of Direct NetworkEvaluation of Direct Network

Communication latency:Communication latency: Start-up latency + Network latency + Blocking timeStart-up latency + Network latency + Blocking time Start-up latency:Start-up latency:

It is the time to handle the packet at source & destination nodes.It is the time to handle the packet at source & destination nodes. Network latency:Network latency:

It is the time between a packet leaving the source and arriving at It is the time between a packet leaving the source and arriving at the destination.the destination.

Blocking timeBlocking timeAll possible delays encountered during the life-time of packet.All possible delays encountered during the life-time of packet.

Communication latency depends on the type of Communication latency depends on the type of switching technique → Wormhole routingswitching technique → Wormhole routing

Page 6: The Turn Model For Adaptive Routing

66

Switching TechniqueSwitching Technique

Switching Technique

Circuit Switching

Virtual Cut Through

Packet Switching

Wormhole Switching

Switching Technique

Virtual Cut Through

Page 7: The Turn Model For Adaptive Routing

04/10/2304/10/23

Packet RoutingPacket Routing

There are two basic approaches to routing There are two basic approaches to routing packets, based on what a switch does with packets, based on what a switch does with a packet as its flits begin to arrive.a packet as its flits begin to arrive.

1)1) Store-and-forwardStore-and-forward

2)2) Cut-throughCut-through Virtual cut-throughVirtual cut-through WormholeWormhole

Page 8: The Turn Model For Adaptive Routing

88

Wormhole SwitchingWormhole Switching

A packet is divided into a number of flitsA packet is divided into a number of flitsThe header flit of a packet governs the routeThe header flit of a packet governs the routeThe remaining flits following in a pipelineThe remaining flits following in a pipeline

fashionfashionThus a message resembles worm borrowing Thus a message resembles worm borrowing

through the networkthrough the network

Page 9: The Turn Model For Adaptive Routing

99

TransmissionTransmission

Packet is transmitted from a node as Packet is transmitted from a node as flit( smallest unit on which flow control flit( smallest unit on which flow control can be performed).can be performed).

Two kinds of Flits Header flit and Data Two kinds of Flits Header flit and Data flit.flit.

Header Flit tries to get the another Header Flit tries to get the another channel while the data flits are channel while the data flits are transmitted through the already transmitted through the already obtained channels. obtained channels.

A channel is released only when the A channel is released only when the last flit of the message is passed last flit of the message is passed though it.though it.

Flits of two messages cannot be Flits of two messages cannot be interleaved.interleaved.

Page 10: The Turn Model For Adaptive Routing

1010

Wormhole RoutingWormhole Routing

Based on cut-through conceptBased on cut-through concept Relatively independent of path lengthRelatively independent of path length

Overcome: Overcome: Store-and-forward and Virtual cut-through Store-and-forward and Virtual cut-through

’s buffer size problem ’s buffer size problem Circuit switching ’s channel reservation and Circuit switching ’s channel reservation and

release problemrelease problem

Two positive effect:Two positive effect: The absence of network contention makes The absence of network contention makes

the network latency relatively insensitive to the network latency relatively insensitive to path lengthpath length

Large packet buffers at each intermediate Large packet buffers at each intermediate node are obviatednode are obviated

Page 11: The Turn Model For Adaptive Routing

1111

S

D

C om m and

Address

Payload

Flit

Flit

Flit

Wormhole RoutingWormhole Routing

Advantages: Advantages:

reduced bufferingreduced buffering

Flit (routing info)

Flit

Flit

Low latencyLow latency

Wormhole Packet:

Page 12: The Turn Model For Adaptive Routing

1212

Characteristics of Routing Characteristics of Routing AlgorithmsAlgorithms

A good routing algorithm:A good routing algorithm:

Reduce the network latencyReduce the network latency

Easily implemented in hardwareEasily implemented in hardware

High network throughputHigh network throughput

Page 13: The Turn Model For Adaptive Routing

1313

DeadlockDeadlock

Packets are allowed Packets are allowed to hold a resource to hold a resource (channel) while (channel) while waiting for another waiting for another resource resource

Deadlock free routing Deadlock free routing algorithmalgorithm

Page 14: The Turn Model For Adaptive Routing

1414

Deadlocks in Wormhole SwitchingDeadlocks in Wormhole Switching

Header Flit contains all the routing Header Flit contains all the routing information that is required to move data information that is required to move data flits across the network. If the header flit flits across the network. If the header flit cannot move any further then there will a cannot move any further then there will a congestion which causes a chained block congestion which causes a chained block in the network which leads to Deadlocks.in the network which leads to Deadlocks.

Page 15: The Turn Model For Adaptive Routing

1515

The Turn ModelThe Turn Model

Basis: Basis: Analyze directions in which packets Analyze directions in which packets cancan turn in the turn in the

networknetwork Determine the cycles that such turns can formDetermine the cycles that such turns can form Prohibit Prohibit just enoughjust enough turns to break turns to break all all cycle cycle

Resulting routing algorithms are:Resulting routing algorithms are: Deadlock and livelock freeDeadlock and livelock free Minimal/Non-minimalMinimal/Non-minimal Highly Adaptive.Highly Adaptive.

Page 16: The Turn Model For Adaptive Routing

1616

The Turn model (contd..)The Turn model (contd..)

Deadlock freeDeadlock freeLivelock freeLivelock free

livelock occurs when the routing of a packet never leadlivelock occurs when the routing of a packet never lead it to its destination.it to its destination.

Adaptive Adaptive from A to B determines the path based on the Network load.from A to B determines the path based on the Network load.

Minimal Minimal restricts packets to shortest paths.restricts packets to shortest paths.

Non-minimal Non-minimal Although minimal routing may initially sound more promising, non-minimal Although minimal routing may initially sound more promising, non-minimal

routing provides more choices.routing provides more choices.

Page 17: The Turn Model For Adaptive Routing

1717

The Turn Model (contd…)The Turn Model (contd…)

Classify channels according to the direction in which they route packets.

Identify the turns that occur between one direction and another, omitting 0-degree and 180-degree turns.

Identify the simple cycles these turns can form.

Prohibit one turn in each cycle.

In the case of k-ary n-cubes, incorporate as many turns as possible that involve wraparound channels.

Add 180-degree and 0-degree turns if there are multiple channels in the same direction.

Page 18: The Turn Model For Adaptive Routing

1818

The Turn Model (contd.)The Turn Model (contd.)

Simple Illustration:Simple Illustration:

-The possible turns and simple cycles in a two-dimensional mesh.

-The four turns allowed by the xy routing algorithm.

-Six turns that complete the cycles and allows deadlock.

Page 19: The Turn Model For Adaptive Routing

1919

Turn Model (contd.)Turn Model (contd.)

West-First Routing AlgorithmWest-First Routing Algorithm

Prohibited turns are theProhibited turns are the

two to the west.two to the west.

Route a packet first west if Route a packet first west if necessary, and then adaptively necessary, and then adaptively south , east, and north.south , east, and north.

Both minimal and non-minimal Both minimal and non-minimal paths are shown.paths are shown.

[Dally and Seitz] proof show that a [Dally and Seitz] proof show that a routing algorithm is deadlock free if routing algorithm is deadlock free if the channels in the interconnection the channels in the interconnection network can be numbered so that network can be numbered so that the algorithm routes every packet the algorithm routes every packet along channels with strictly along channels with strictly decreasing numbers.decreasing numbers.

Page 20: The Turn Model For Adaptive Routing

2020

S

D

Deadlock Free RoutingDeadlock Free Routing

West First Algorithm

Page 21: The Turn Model For Adaptive Routing

2121

S

D

West First Algorithm

Deadlock Free RoutingDeadlock Free Routing

Page 22: The Turn Model For Adaptive Routing

2222

D S

Deadlock Free RoutingDeadlock Free Routing

West First Algorithm

Page 23: The Turn Model For Adaptive Routing

2323

Turn Model (contd.)Turn Model (contd.)

North-Last Routing AlgorithmNorth-Last Routing Algorithm

Page 24: The Turn Model For Adaptive Routing

2424

D S

Deadlock Free RoutingDeadlock Free Routing

North Last Algorithm

Page 25: The Turn Model For Adaptive Routing

2525

Turn Model (contd.)Turn Model (contd.)Negative-First Routing AlgorithmNegative-First Routing Algorithm

If the packet in +ve direction If the packet in +ve direction

it will never turn –ve.it will never turn –ve.

+y

-x

-y

+x

Page 26: The Turn Model For Adaptive Routing

2626

Turn Model (contd.)Turn Model (contd.)

n – Dimensional meshesn – Dimensional meshes Prohibit n(n-1) 90 degree turns to prevent deadlock.Prohibit n(n-1) 90 degree turns to prevent deadlock. One half of all possible 180 degree turns must be prohibitedOne half of all possible 180 degree turns must be prohibited Resulting algorithms:Resulting algorithms:

All-but-one-negative-firstAll-but-one-negative-firstAll-but-one-positive-lastAll-but-one-positive-lastNegative-firstNegative-first

k-ary n-cubesk-ary n-cubesAllows to use the wraparound channelsAllows to use the wraparound channelsAssigns the wraparound channels a number.Assigns the wraparound channels a number.

Negative first algorithmNegative first algorithmClassify wraparound channel according to the direction in which it Classify wraparound channel according to the direction in which it routes packetsroutes packetsApply the algorithmApply the algorithm

Page 27: The Turn Model For Adaptive Routing

2727

p-cube Routing in Hypercubesp-cube Routing in Hypercubes

Hypercubea are special case of both Hypercubea are special case of both n-dimensional meshes and k-ary n-n-dimensional meshes and k-ary n-cube.cube.

S =the binary address of the source S =the binary address of the source node for a packetnode for a packet

C=binary address of the node the C=binary address of the node the header flits currently occupyheader flits currently occupy

D=binary address of the destination D=binary address of the destination node.node.

Two Phase:Two Phase:Phase 1: route packets along a Phase 1: route packets along a

dimension i for which ci=1 and dimension i for which ci=1 and di=0 in minimal di=0 in minimal

Phase Phase 2:when no such dimension2:when no such dimension then , route packet along i such then , route packet along i such that ci=0 and di=1 in minimal.that ci=0 and di=1 in minimal.

Page 28: The Turn Model For Adaptive Routing

2828

The minimal The minimal pp-cube ….-cube ….Example : 10-cube S=1011010100 D=0010111001

h0=3 and h1=3 so h=6 36 possible shortest paths.

Phase 1: C=1011010100 = C9 C8 C7 C6 C5 C4 C3 C2 C1 C0

C=1011010100 ;( ci=1 and di=0)

‘D=1101000110

^ ------------------------------

R = 1001000100 ( 3 choices) dimension taken d2

C= 1011010000

‘D= 1101000110

------------------------------

R= 1001000000 (2 Choices) dim. taken d9

C= 0011010000

‘D=1101000110

------------------------------

R= 0001000000 (1 choice) dim d6

C= 0010010000

‘D=1101000110

-----------------------

R= 000000000

Page 29: The Turn Model For Adaptive Routing

2929

The minimal The minimal pp-cube ….-cube ….Example : 10-cube S=1011010100 D=0010111001

h0=3 and h1=3 so h=6 36 possible shortest paths.

Phase 2: C= 0010010000 D=0010111001

‘C=1101101111

D=0010111001

------------------------

R=0000101001 Choices = 3 Dim=d5

C=0010110000 ( 0 to 1)

‘C=1101001111

D=0010111001

------------------------

R= 0000001001 choices= 2 Dim=d0

C= 0010110001

‘C= 1101001110

D= 0010111001

---------------------------

R= 0000001000 Choice=1 Dim =d3

C=0010111001 = D

Page 30: The Turn Model For Adaptive Routing

3030

The nonminimal The nonminimal p-p-cube algo.cube algo.

It is desired , because of It is desired , because of its increased adaptive its increased adaptive nessness

The first phase can route The first phase can route the packet along any the packet along any dimension i for which ci=1 dimension i for which ci=1 and di=1.and di=1.

pp : last hop was in the : last hop was in the

+ve direction.+ve direction.

Expect more choicesExpect more choices

Page 31: The Turn Model For Adaptive Routing

3131

The nonminimal The nonminimal p-p-cube algocube algo

(0,0,0) (1,0,0)

(0,0,1)

(0,1,1)(1,1,1)

(1,0,1)

(1,1,0)

The meaning of the algorithm's steps are with Dr. Pfeiffer’s help (example):

2- if last hop from +ve . Take the +ve only.

If S=011 , D=111

One choice 011→ 111

3- else if last hop was –ve and if destination not any more –ve go –ve or +ve.

S=011 , D=111

Choice 1 : 011→ 111

Choice 2: 011 → 001

Choice 3: 011 → 010

4- else going -ve

(0,1,0)

Page 32: The Turn Model For Adaptive Routing

3232

Simulation ExperimentsSimulation Experiments

• Comparison of the partially adaptive with a non adaptive routing algorithms

• Simulation of a 16x16 mesh and a binary 8-cube for three different traffic patterns

• Each of these contains 256 nodes

• Bandwidth is equal to 20 flits/microsec

• For uniform traffic in the mesh and the hypercube the nonadaptive routing algorithms have lower latencies at high throughputs than the partially adaptive algorithms

Page 33: The Turn Model For Adaptive Routing

3333

Simulation experiments (contd.)Simulation experiments (contd.)

• At low throughputs ,the algorithms performs about the same.

•For the non-uniform traffic patterns the partially adaptive routing algorithms have lower latencies at high throughputs

•For the negative-first algo.The degree of adaptive ness higher than the other . According to the hamming distance or if we measure S( algo.)/S( fully adaptive).

Page 34: The Turn Model For Adaptive Routing

3434

ConclusionConclusion

The turn model produces The turn model produces deadlock free, livelock free, deadlock free, livelock free, minimal or non-minimal and minimal or non-minimal and maximally adaptive algorithms.maximally adaptive algorithms.

These algorithms perform These algorithms perform better than nonadaptive better than nonadaptive algorithms for nonuniform algorithms for nonuniform patterns of message traffic.patterns of message traffic.

Page 35: The Turn Model For Adaptive Routing

3535

A Peek into the Future A Peek into the Future

To investigate the effects of different input and output To investigate the effects of different input and output selection policies on network performance.selection policies on network performance.

To illustrate the application of the turn model to To illustrate the application of the turn model to networks that include extra physical or virtual channel.networks that include extra physical or virtual channel.

To apply the turn model to other topologies, such as, To apply the turn model to other topologies, such as, hexagonal, octagonal and cube connected cycle hexagonal, octagonal and cube connected cycle networks.networks.

Identification of realistic workload distributions.Identification of realistic workload distributions.

Page 36: The Turn Model For Adaptive Routing

3636

ReferencesReferences

The Turn Model for adaptive routingThe Turn Model for adaptive routing

Wormhole Routing in Parallel ComputersWormhole Routing in Parallel Computers

A processor architecture for A processor architecture for multiprocessing multiprocessormultiprocessing multiprocessor