The Turn Model For Adaptive Routing
-
Upload
nirmala-last -
Category
Technology
-
view
963 -
download
0
description
Transcript of 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
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.
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
44
Generic ArchitectureGeneric Architecture
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
66
Switching TechniqueSwitching Technique
Switching Technique
Circuit Switching
Virtual Cut Through
Packet Switching
Wormhole Switching
Switching Technique
Virtual Cut Through
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
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
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.
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
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:
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
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
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.
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.
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.
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.
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.
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.
2020
S
D
Deadlock Free RoutingDeadlock Free Routing
West First Algorithm
2121
S
D
West First Algorithm
Deadlock Free RoutingDeadlock Free Routing
2222
D S
Deadlock Free RoutingDeadlock Free Routing
West First Algorithm
2323
Turn Model (contd.)Turn Model (contd.)
North-Last Routing AlgorithmNorth-Last Routing Algorithm
2424
D S
Deadlock Free RoutingDeadlock Free Routing
North Last Algorithm
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
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
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.
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
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
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
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)
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
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).
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.
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.
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