An Examination of Routing Algorithms for Parallel Computing Environments By James Kurtz Luis Martinez
Network Topology Types Irregular Regular Irregular Irregular � Conforms to some sort of “regular graph standard”, or definable shape:
Network Topology Types Regular Irregular Irregular Irregular � Conforms to some sort of “regular graph standard”, or definable shape: � Ex: Cubes
Network Topology Types Regular Irregular Irregular Irregular � Conforms to some sort of “regular graph standard”, or definable shape: � Ex: Torus (Ring)
Network Topology Types Regular Irregular Irregular Irregular � Conforms to some sort of “regular graph standard”, or definable shape: � Ex: Meshes
Network Topology Types Regular Regular Regular Irregular Conforms to some � Conforms to some Conforms to some � Don’t. � � sort of “regular sort of “regular sort of “regular � Best example is the graph standard”, or graph standard”, or graph standard”, or Internet definable shape: definable shape: definable shape:
Routing Algorithms for Regular and Irregular Topologies I’m going to take a look at some algorithms designed for regular networks James will later show you some algorithms for irregular networks Yes, I had to make this slide, otherwise I’d forget to say that
Detour-NF Described by Yoshinaga in his 2003 paper “ Design and Evaluation of a Fault- Tolerant Adaptive Router for Parallel Computers ” A fault-tolerant algorithm designed for a fault- tolerant router of their design. They don’t like faults. Did they mention fault-tolerance yet?
Detour-NF They wanted a system which allowed them to switch their routing modes between deterministic and adaptive � They also wanted to further expand the adaptive functionality to include both minimal and non- minimal routing � The reason to include both is that minimal routing doesn’t support fault-tolerance (take a drink!) � Non-minimal routing can easily emulate minimal routing once implemented
Detour-NF Takes an already existing fully-adaptive algorithm � Adds one or more VC’s (in addition to any it may already use) to any existing channels � Treated as non-minimal channels � Adds a function, R, which details how to use the VC’s
Detour-NF � The original algorithm and R are combined � The combined algorithm favors paths chosen by the original, but � Misroutes a message to one of the new VC’s if there is an unavoidable block in the channel � Fault-tolerance! (seriously, I close my eyes, I see that term…)
Routing in Detour-NF If a channel is blocked for whatever reason, the algorithm forces it to take a turn in the “negative” direction � Followed by whatever turns are necessary to leapfrog the compromised channel in question � “Positive” direction turns as the first step in a leap frog are not allowed
Routing in Detour-NF Unintended consequence: � If the path is blocked by a faulty channel at its last turn, the path becomes unnecessarily long, since it cannot begin a leapfrog with a positive turn. � Solution: Allow 180 degree turns
Detour-NF Analysis The hardware router they designed to implement this algorithm is more expensive � 29% increase in FlipFlops compared to other routers (dimension-order, Duato’s Protocol) Other routers can be faster But the other routers compared, such as Duato’s Protocol, aren’t fault-tolerant
Odd-Even Turn Model Ge-Ming Chiu of the IEEE Computer Society Can be both an element of a larger algorithm, or its own algorithm Used to determine what kinds of turns a message can make in its travels Avoids deadlock � Doesn’t use Virtual Channels
Odd-Even Turn Model Most deadlock-avoiding, non-VC algorithms accomplish their goal by prohibiting certain kinds turns altogether, closely controlling them, or limiting their numbers Chiu says this results in an uneven efficiency across a regular mesh His turning model seeks to limit the limits � Specifically it prohibits only specific turns at specific places, but otherwise, the message is free to turn however it wants
Odd-Even Turn Model Picture a mesh NORTH network � Label the top North EAST � The left West, right East WEST � The Bottom South SOUTH
Odd-Even Turn Model Define a turn, NW, on node NORTH X such that the message is � Traveling in a northern direction, turns at X, and EAST heads in a western direction WEST SOUTH
Odd-Even Turn Model Now number the rows NORTH 0 2 1 and columns on the 0 grid, starting from 0 EAST 1 WEST 2 SOUTH
Odd-Even Turn Model NORTH Now the rules: 0 2 1 � Rule 1. Any packet is not 0 allowed to take an EN turn at any nodes located EAST in an even column, and it 1 is not allowed to take an NW turn at any nodes WEST located in an odd column. 2 SOUTH
Odd-Even Turn Model NORTH Now the rules: 0 2 1 � Rule 2. Any packet is not 0 allowed to take an ES turn at any nodes located EAST in an even column, and it 1 is not allowed to take an SW turn at any nodes WEST located in an odd column 2 SOUTH
Odd-Even Turn Model NORTH Now the rules: 0 2 1 � What does this mean? 0 � The tell-tale cycle of a deadlock is prevented by EAST never letting the eastern- 1 most side of that cycle form WEST 2 SOUTH
Odd-Even Turn Model NORTH Now the rules: 0 2 1 � What does this mean? 0 � 180-degree turns however cannot be allowed. EAST 1 WEST 2 SOUTH
Odd-Even Turn Model Analysis An algorithm formed from the Odd- Even Turn Model performed well under high-traffic situations The xy algorithm performed best under most situations, but its un-evenness caused fluctuations in network performance.
Odd-Even Turn Model Analysis Pros: � Easy scalability. It can be applied to a regular mesh of most any large size. � Larger more expensive parallel systems � Can easily be incorporated into other dead-lock free algorithms. � Since it’s not dependant on VC’s, it may even form the basis of a VC-defining algorithm that may be used by another VC-based routing algorithm (such as R in Detour-NF perhaps)
Virtual Channel Used to divide network into sub- networks This sub-network is virtual network Creates shorter path hops Avoid deadlock
No Virtual Channel Algorithms Low port first Random Sancho’s Low virtual-channel first
Up* /Down* (Sancho’s) Avoids network congestion Labels paths Remove path with largest counter Continues until one path remains
Virtual Channel Algorithms Previous Algorithms High virtual-channel first High physical-channel first Low virtual-channel first Low physical-channel first
Virtual Channel Cont. Descending Layers network (DL) � Divide into sub networks All variations on Sancho’s algorithm Counters based on virtual channels Better at avoiding network congestion
Performance High virtual channel first had a increase in throughput over low port first of 92% All DL routing algorithms were better than Up* /Down* routing algorithms
Test Results
Test Results Cont.
Questions?
Recommend
More recommend