Article View: comp.hypercube
Article #19Re: T or routing question
From: David C. DiNucci
Date: Thu, 16 Jul 1987 13:20
Date: Thu, 16 Jul 1987 13:20
36 lines
1798 bytes
1798 bytes
In article <ogcvax.1351> I write:
>In article <hubcap.282> gdburns@TCGOULD.TN.CORNELL.EDU (Greg Burns) writes:
>>000 001 011 010 110 111 101 100
>>
>>Given only a bit code difference (src exclusive or dest) we all know how
>>to route on a hypercube. But how do you determine the route on the above
>>loop?
>
> . . .
>
>Any solution that doesn't require message passing will beat this
>for setup speed, but I don't know about simplicity.
Message passing can be eliminated easily by just "simulating" the
cube on each node. This can be done by using something like the
following: (Unlike the previous alg, this one is untested though
nearly identical)
dest = 0;
count = 0;
do {
++count;
me = dest;
dest = me ^ (count & -count);
} while (me != mynode)
if (count == cubesize) dest = 0;
/* dest now contains ptr to next guy in the ring */
The previous algorithm is missing the special-case "if" at the end.
Sorry for wasting so much bandwidth on a personal solution to a
problem which has likely been solved by uncountable others (and
probably better).
--
Dave DiNucci UUCP: ..ucbvax!tektronix!ogcvax!dinucci
Oregon Graduate Center CSNET: dinucci@Oregon-Grad.csnet
Beaverton, Oregon
Technical Details
Message-ID:
<311@hubcap.UUCP>Path:
arc1-ca.pugleaf.net!utzoo!mnetor!uunet!seismo!gatech!hubcap!dinucciShow Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: arc1-ca.pugleaf.net!utzoo!mnetor!uunet!seismo!gatech!hubcap!dinucci From: dinucci@ogcvax.UUCP (David C. DiNucci) Newsgroups: comp.hypercube Subject: Re: T or routing question Message-ID: <311@hubcap.UUCP> Date: Thu, 16-Jul-87 09:20:01 EDT Article-I.D.: hubcap.311 Posted: Thu Jul 16 09:20:01 1987 Date-Received: Sat, 18-Jul-87 06:42:46 EDT Sender: fpst@hubcap.UUCP Lines: 36 Approved: hypercube@hubcap.clemson.edu Summary: Obvious speedup to earlier posting