Path: utzoo!mnetor!uunet!husc6!rutgers!ames!amelia!orville.nas.nasa.gov!fouts From: fouts@orville.nas.nasa.gov (Marty Fouts) Newsgroups: comp.arch Subject: Single/Multi Tasking position summary (was Re: Single tasking) Message-ID: <60@amelia.nas.nasa.gov> Date: 29 Dec 87 18:16:25 GMT Sender: news@amelia.nas.nasa.gov Reply-To: fouts@orville.nas.nasa.gov (Marty Fouts) Lines: 62 Barry Shein write: > Marty Fouts continues a tradition in discussions of the relative > merits of parallel machines which can be summed up in the simple > statement of the "best as enemy of the good". This certainly wasn't my intent, although the discussion may have drifted that way. It was my intent to counter a certain amount of the enthusiasm which could lead to a belief that parallel architectures are the right answer for all problems, when there are some cases in which a single processor machine is a better choice. He has also raised another example of parallel processing enthusiasm which I try to counter when I can. He shows that an Encore Multimax gives a speed of of 50x over a 750 for a particular make. Of course, this looks good until you realize that he's talking about two different generations of processors in two different price ranges. I would be interested if Barry would tell us the speedup the Multimax gets over doing the same make on 1 of its cpus. I would also be interested in comparing the Multimax performance to that of a single processor system done in more recent technology than an 750, for instance a Sun 3/260. His ancedote is an example of a problem which we haven't discussed yet in this exchange over parallelism, which is price performance. We have on our floor a Convex C1 and an Alliant FX8 which I believe are about equivalently priced models. Although the Alliant can parallize some of my algorithms which the Convex can not vectorize, they all tend to run faster on the Convex than on the Alliant. I do *NOT* make the general claim that at a given price a parallel machine has poorer performance than a single processor, but for a fairly wide range of problems over a fairly wide price range of machines, this seems to be true. This exchange of ancedotal evidence leads to the hard question: For which problems will a parallel processor using the best available implementation technology give better cost/performance than the best single processor? Try comparing the best performing $250K single processor system to the best performing $250K parallel processor system on your problems. If your like me, you will find there is no simple predictor of which problems will work better on either. Next, try picking a different price tag. You will find that the set of programs which work best on one architecture will be different than before. What fun! He goes on to ask what's the point in this discussion? To me, the point is to learn about the trade offs between parallel and single processor systems, and to offer some data points to others who are about to enter this arena. He concludes with the statement: > Seriously, what's the point? Just the 80's version of all the people > that used to decry higher level languages because they could pull out > this algorithm that no compiler could do as good a job on as a > hand-coded solution. So what!? No. The point is not to say no one should use parallel systems under any circumstances. Like Mr. Shein, I use them regularly. The point is to try to help new users form realistic expectations of the class or problems for which parallelism is trivial, the class for which it is work (and the nature of the work) and the class for which it should not be utilized.