Re: automatic exploitation of task parallelism from sequential

greg@cee.hw.ac.uk
Fri, 1 Dec 1995 12:17:44 GMT

          From comp.compilers

Related articles
automatic exploitation of task parallelism from sequential dave@occl-cam.demon.co.uk (Dave Lloyd) (1995-11-23)
Re: automatic exploitation of task parallelism from sequential greg@cee.hw.ac.uk (1995-12-01)
| List of all articles for this month |
Newsgroups: comp.compilers
From: greg@cee.hw.ac.uk
Originator: greg@thor.cee.hw.ac.uk
Keywords: parallel
Organization: Dept of Computing and Electrical Engineering, Heriot-Watt University
References: 95-11-204
Date: Fri, 1 Dec 1995 12:17:44 GMT

Dave Lloyd <dave@occl-cam.demon.co.uk>:
>> Is it true that most researchers in parallel computing, consider
>> automatic exploitation of parallelism from sequential programs, like
>> C, too complicated ?


Imperative languages like C have side effects which makes elucidating
parallelism somewhat tricky. Its much easier for pure functional languages
which lack assignment: program components can't interact through
changes to shared variables so you can find potential parallelism
everywhere. Alas, most of that that parallelism is too fine grain for
efficient exploitation. However, there are nice correspondences between
higher order functions and algorithmic skeletons which provide hints as
to sites of exploitable parallelism. For example, see Murray Cole's book.


You might also look at David Busvine's and Tore Bratvold's work on
parallelising compilers to turn sequential SML programs into occam2
using a skeleton based approach. You can find details on:
  http://www.cee.hw.ac.uk/Research/funct_prog.html


Of course, algorithmic skeletons can be used for parallelisng imperative
languages as for example in Susan Pelagatti's work on the Pisa Parallel
Programming Language.


Greg Michaelson
--


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.