Path: utzoo!utgpu!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!unmvax!gatech!hubcap!halldors
From: halldors@paul.rutgers.edu (Magnus M Halldorsson)
Newsgroups: comp.parallel
Subject: Re: Superlinear
Message-ID: <3809@hubcap.UUCP>
Date: 9 Dec 88 17:41:54 GMT
Sender: fpst@hubcap.UUCP
Lines: 25
Approved: parallel@hubcap.clemson.edu

In article <3801@hubcap.UUCP> mcvax!ivax.doc.imperial.ac.uk!mmh@uunet.UU.NET (Matthew Huntbach) writes:

> Depends on the algorithm. In parallel heuristic search superlinear
> speedup can happen easily.
>... 
> As a simple demonstration, suppose you are searching a tree with one branch
> which your heuristic tells you is promising, but which after a lot of
> computation (say 11 time units) does not yield a result, and another branch 
> which your heuristic tells you is less promising but which does in fact yield
> a result after a small amount of computation (say 1 time unit).
> 
> On a single processor you could search the whole large branch first 
> before turning to the small branch and finding your solution: total time
> 12 units.

But you can always simulate the parallel processors by traversing the
tree breadth-first. That will require a stack and extra memory, but no
more than the memory used by all the parallel processors combined.
  For this algorithm, the parallel version would be an example of
AND-parallelism, while for the standard sequential algorithm, it would
be an example of OR-parallelism.
  The moral is, you can only get superlinear speedup if the
corresponding sequential algorithm you're comparing with is less optimal.

Magnus