Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.2 9/18/84; site cmcl2.UUCP
Path: utzoo!watmath!clyde!burl!ulysses!allegra!bellcore!decvax!genrad!panda!talcott!harvard!seismo!cmcl2!gottlieb
From: gottlieb@cmcl2.UUCP (Allan Gottlieb)
Newsgroups: net.arch
Subject: Re: Cube designs
Message-ID: <814@cmcl2.UUCP>
Date: Fri, 1-Mar-85 20:05:53 EST
Article-I.D.: cmcl2.814
Posted: Fri Mar  1 20:05:53 1985
Date-Received: Mon, 4-Mar-85 07:46:28 EST
References: <7306@watrose.UUCP> <798@loral.UUCP>
Reply-To: gottlieb@cmcl2.UUCP (Allan Gottlieb)
Organization: New York University
Lines: 34
Summary: 

Although I would agree that programming parallel processors is
inherently more difficult that programming serial machines, the
additional effort required need not be as great as some contributers
have indicated.  There is a significant architectural variation in
parllel machines and some are easier to program than others.  We
believe that with Shared Memory MIMD machines, applications programs do
not resemble operating systems.  For example we have modified the NASA
"weather code" (the GISS atmospheric simulation program).  This is a
several thousand line FORTRAN program that doubtless represents
multiple manyears of development.  Our conversion required
considerably under 1 man year.   We have done many other largish
scientific codes and have never required nearly as much time to
parallelize the code as the original development.  Thus for those
problems, producing parallel programs is bounded by twice the serial
effort.

There is a price to pay for this relative programming ease.
Our design (the NYU Ultracomputer) includes a sophisticated
(and expensive) processor to memory interconnection network
that, among other things, can satisfy multiple simultaneous
memory references to the same word in just the time required
for one such reference.  Since this network will have a
non-negligible component count, the same amount of money will
buy more computing power if used for a cube, or other
nonshared memory design.

On the subject of operating systems our currently operational
"symmunix" is largly parallel (concurrently executed by multiple
processors) and symmetric (no master-slave relationships).
Ask its principle author (cmcl2!edler) for details.
-- 
Allan Gottlieb
GOTTLIEB@NYU
{floyd,ihnp4}!cmcl2!gottlieb   <---the character before the 2 is an el