[net.arch] Parallel constructs in languages

ian@loral.UUCP (Ian Kaplan) (03/28/85)

In article donz@tekcbi.UUCP (Don Zocchi) writes:
>
> I feel that the best solutions [ to parallel programming ] have 
> hidden the parallel nature of the machine.  By hiding the parallel 
> nature, I mean removing the need for parallel constructs, yet providing 
> multi-processor performance advantages.
>
  I think that there would be wide spread agreement that the ideal parallel
  programming environment would allow the programmer to take old dusty
  FORTRAN programs and run them on a parallel processor (I have not used C
  as an example simply because the lust for speed, and the ability to pay
  for it, is not a common among C user's as it is with FORTRAN user's).
  Unfortunately there has been only limited success in getting FORTRAN 
  to run on parallel architectures without change.  Even in these cases,
  only "well behaved" FORTRAN programs are used (see papers by Kuck).

  Once an algorithm is expressed, regardless of the language used, the 
  language processors can only extract parallelism from that algorithmic
  expression.  When programming a parallel processor, algorithms must also 
  be expressed in parallel form.  Performance can be greatly influenced 
  by the expression of an algorithm.  If an algorithm is expressed in a 
  sequential manner, there will be only a limited amount of parallelism 
  which can be achieved.  If the same program were written with parallel 
  flow much more parallelism could be achieved.  

  I do not believe that there is any escape from parallel constructs in the
  programming system.  Although different parallel architectures use
  different language constructs, all existing systems have them.  Even on 
  the Cray, where only vectorization is sought, special syntax is provided 
  direct the compiler.  Running a single application on a multiprocessor 
  Cray seems to still be an open issue.

		     Ian Kaplan
		     Loral Instrumentation
		     (619) 560-5888 x4812
	     USENET: {ucbvax,decvax,ihnp4}!sdcsvax!sdcc6!loral!ian
	     ARPA:   sdcc6!loral!ian@UCSD
	     USPS:   8401 Aero Dr. San Diego, CA 92123