Thread View: comp.hypercube
1 messages
1 total messages
Started by Wen-King
Thu, 16 Jul 1987 12:57
Re: Deadlock Free Routing (Question on hypercube routing)
Author: Wen-King
Date: Thu, 16 Jul 1987 12:57
Date: Thu, 16 Jul 1987 12:57
55 lines
3599 bytes
3599 bytes
In article <293@hubcap.UUCP> ravi@CS.UCLA.EDU writes: >In article <291@hubcap.UUCP> wen-king@VLSI.CALTECH.EDU (Wen-King Su) writes: >>In article <285@hubcap.UUCP> ravi@CS.UCLA.EDU writes: <><>The obvious solution to this problem is to randomly choose the direction >> <in which the message should be routed, ... >> <>If you do this, you may have problems with deadlock due to lack of queue >>space along the path of the message. < >However when one chooses a direction toward the destination I <see no reason why it should deadlock. I will give an example showing a case of deadlock under one situation for one routing algorithm. Consider a 4 node cycle in a message passing multi-computer. 0 - 1 1) Each node wants to send a message to the node on its diagonal | | and they all happen to choose the clockwise path. 2 - 3 2) At the same time, each node is filled up completely with messages going toward its diagonal (presumably originated from nodes outside of the 4-cycle), all of which choose to go in the clockwise direction. We now have a deadlock because no message will move in this cycle even though each message wants to move in a direction toward it destination. You may say, well we can do this or do we can that etc, but the burden of proof is on you, however, to formulate a routing algorithm and to show that it is deadlock free. If you claim that any algorithm would be deadlock free on one particular machine, it is also your burden to show that too. (We are scientists arn't we? :-) I am not trying to say that there are no other deadlock free routing algorithms for a binary n-cube (infact, there are several well known ones), I am only trying to say that routing is not a trivial issue. One needs to give the issue of deadlock some thought when formulating a routing algorithm. In your case, the obvious question to ask would be "will the message system still be deadlock free after changes in the channel assignment algorithm are made. If no, how may the rest of the mesage system be modified so to make it deadlock free." The problem of deadlock in a message passing network is a well studied topic, I can post a list of references if there is enough interest. The availability of a simple deadlock free algorithm is very often the main guiding force in the design of a machine. Here in Caltech, we have designed or participated in the design of several boolean n-cubes because at the time it is the only topology for which there is a simple deadlock free algorithm. We later switched to torus when former grad student (now PhD) Bill Dally devised a simple routing mechanism for torus using virtual channels. I (still a lowly grad student) have since shown that a rather obvious way of routing messages on a mesh is also deadlock free. Our group is now designing meshes. +--------------------------------------------------------------------------+ | Wen-King Su wen-king@vlsi.caltech.edu Caltech Corp of Cosmic Engineers | +--------------------------------------------------------------------------+
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads