[comp.parallel] Networking for Distributed Computing

mccalpin@perelandra.cms.udel.edu (John D. McCalpin) (04/05/91)

The recent introduction of the HP "Snakes" computer systems
underscores a critical characteristic of modern scientific computing,
that is that the rules of the game change *very* quickly.

It is easy to convince one's self that the most cost-effective
computing environment over the long term (which in these days means "a
few years") is a heterogeneous distributed network, with low-cost
hardware that is updated incrementally.

It is vital in this case to use open systems and off-the-shelf
technology.   Unfortunately, the most commonly available networking
option (ethernet) uses a broadcast approach, which is definitely
sub-optimal for the communications needs of many "natural"
parallel distributed algorithms.

In talking to my IBM salescritter about this topic, he suggested using
an additional SCSI interface as the networking option.  I think that
this is a potentially important idea.  It uses off-the shelf hardware,
and only requires the writing of some (fairly simple?) SCSI device
drivers.

The system I envision would consist of some moderate number of
high-performance cheap workstations (IBM RS/6000-320 or HP/9000-720),
lets take 32 as an example.  An additional SCSI interface on each unit
would provide 7 high-speed, point-to-point interfaces, which could be
reconfigured (via a patch panel) to provide a large number of
different topologies, including: a line, a 2-D mesh, a 3-D mesh, a
ring, etc.

I believe that it would be easy to modify a Linda-like software system
to operate efficiently on such a system.  Simply map particular named
tuple-spaces into particular device drivers so that point-to-point
communications may be executed directly.  A "default" or un-named
tuple space could still be handled in a global fashion using the
broadcast network.  It might be used for things like global
accumulations and synchronization messages.

A suitably designed code (for example a 3-D spectral element code for
fluid dynamics using explicit time marching techniques) should be
capable of 1 GFLOPS performance on a network of 32 IBM RS/6000-320's.
With current university discounts and third-party memory, such a
system (with 32 MB RAM per node) could be assembled for less than
$500,000.  Apparently, the HP/9000-720 would be capable of slightly
higher performance at a similar cost (though I don't know about
3rd-party memory for the HP's).

So what is wrong with this idea?  Am I misunderstanding what can be
done with a SCSI interface or how hard the implementation of a
buffered FIFO would be?
--
John D. McCalpin			mccalpin@perelandra.cms.udel.edu
Assistant Professor			mccalpin@brahms.udel.edu
College of Marine Studies, U. Del.	J.MCCALPIN/OMNET

-- 
=========================== MODERATOR ==============================
Steve Stevenson                            {steve,fpst}@hubcap.clemson.edu
Department of Computer Science,            comp.parallel
Clemson University, Clemson, SC 29634-1906 (803)656-5880.mabell

rkz@scrc.symbolics.com (Randolph K. Zeitvogel) (04/06/91)

[text deleted ...]

   So what is wrong with this idea?  Am I misunderstanding what can be
   done with a SCSI interface or how hard the implementation of a
   buffered FIFO would be?

You might also want to consider a product called SRAMnet from I forget
who at the moment but I could get the info (some outfit in San Diego).
SRAMnet is fiber-optic based token ring network that appears to the machine
as memory.  If the remember the specs correctly, average access time is 150ns.

While the not cheapest solution, its off the shelf and in use today.  I saw
the product at I/ITSC, which is the simulator trade show .

Randy Zeitvogel
Symbolics MACSYMA division
Internet: rkz@symbolics.com




-- 
=========================== MODERATOR ==============================
Steve Stevenson                            {steve,fpst}@hubcap.clemson.edu
Department of Computer Science,            comp.parallel
Clemson University, Clemson, SC 29634-1906 (803)656-5880.mabell

korfhage@weston.poly.edu (Willard Korfhage) (04/09/91)

At least one person has already made an SCSI network. In 1989 VXM Technologies
in Boston told me they had hooked up machines via SCSI ports to form a 
high-speed network for their Linda system.

Also, at the recent Symposium on Experiences with Parallel and Distributed
Systems, Marc Pucci described the ION data engine, which is like an external
processor that attaches to a workstation via a SCSI port, and this could be
used for networking.

Finally, in the Macintosh world there are already a variety of
SCSI-to-Ethernet adapters available, and one could build a network out of
these by running a lot of little point-to-point Ethernets (Ethernets with
only two or few stations on them). No reason why these couldn't be adapted for
workstation use.

     Willard Korfhage

-- 
=========================== MODERATOR ==============================
Steve Stevenson                            {steve,fpst}@hubcap.clemson.edu
Department of Computer Science,            comp.parallel
Clemson University, Clemson, SC 29634-1906 (803)656-5880.mabell