IEEE Transactions on Parallel and Distributed Systems · 1993 · 521 citations · 32 references
ComputingComputer EngineeringComputer ScienceFault ToleranceFault-tolerant ComputingInterconnection NetworksAdaptive RoutingCommunication NetworksDeadlock AvoidanceNetwork Fault ToleranceRoutingRouting AlgorithmsChannel Dependency GraphsDeadlock-free RoutingDependency GraphsFault Tolerance MechanismsInterconnection Network RoutingNetwork Performance OptimizationVirtual Channel AllocationVirtual Channels
The use of adaptive routing in a multicomputer interconnection network improves network performance by using all available paths and provides fault tolerance by allowing messages to be routed around failed channels and nodes. Two deadlock-free adaptive routing algorithms are described. Both algorithms allocate virtual channels using a count of the number of dimension reversals a packet has performed to eliminate cycles in resource dependency graphs. The static algorithm eliminates cycles in the network channel dependency graph. The dynamic algorithm improves virtual channel utilization by permitting dependency cycles and instead eliminating cycles in the packet wait-for graph. It is proved that these algorithms are deadlock-free. Experimental measurements of their performance are presented.< <ETX xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink">></ETX>
32
Charles L. Seitz · Communications of the ACM · 1985 · 1.2K citations · Full text
William J. Dally, Charles L. Seitz · Distributed Computing · 1986 · 771 citations · Full text