[comp.parallel] How is software designed for parallel hosts ?

jarosen@uswest.com (Jim A. Rosenberg) (05/06/91)

In article <TURNER.91May3103811@sp1.csrd.uiuc.edu> turner@csrd.uiuc.edu (Steve Turner) writes:
>I find it significant that even the NYT finds it necessary to
>issue a caveat about about the availability of parallel software.
>This is the key, IMO.
>
>Of course, there is software being developed at various places which
>will allow "automatic" parallelization of applications with internal
>parallism...

The Actual Query -- Mr. Turner talks about "parallel software" and 
"automatic parallelization of applications."  I am trying to understand
how parallelism is currently put to advantage by an application. Is it
the programmer / application, the compiler, or the operating system which 
parallizes the application (or is the responsibility shared) ?  Is the
end - goal to make parallelization transparent to the programmer (the
way pipelining and SMP are today) ?  If so, how far away is this goal ?
What different approaches are different groups taking to this problem ?

So, any information, or pointers to references on the subject, would be
greatly appreciated.  Thanks in advance for all the information and all
the time taken to reply.

Is it the application which must be designed to take advantage of parallel machines?  And therefore, is it the application programmer who is responsible for
utilizing parallelism?

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