Path: utzoo!utgpu!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!uflorida!gatech!hubcap!Matthew
From: mcvax!ivax.doc.imperial.ac.uk!mmh@uunet.UU.NET (Matthew Huntbach)
Newsgroups: comp.parallel
Subject: Re: Superlinear
Message-ID: <3801@hubcap.UUCP>
Date: 8 Dec 88 18:53:39 GMT
Sender: fpst@hubcap.UUCP
Lines: 32
Approved: parallel@hubcap.clemson.edu

In article <3755@hubcap.UUCP>, robison@m.cs.uiuc.edu (Arch Robison) writes:
> I'm looking for references (either pro or con) on the following claim:
> 
> 	A p-processor parallel processor can never exhibit speedup
> 	of greater than p.

Depends on the algorithm. In parallel heuristic search superlinear
speedup can happen easily. The reference I have to hand is:

G-J.Li and B.W.Wah. How to cope with anomalies in parallel approximate
branch-and-bound algorithms.
In National Conference on Artificial Intelligence (AAAI-84) pp.212-215.

though I think there was something in a recent CACM, possibly by the 
same authors.

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.

With two processors you could assign one branch to each processor. Let us 
assume there is a time delay of one unit shipping the less promising 
branch to a remote processor, and a time delay of another unit getting the
result back. You would still get you result in 3 units of time.

So 2 processors give you a speedup of 4   Q.E.D.