Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!convex!usenet From: patrick@convex.COM (Patrick F. McGehearty) Newsgroups: comp.sys.super Subject: Re: MPP Message-ID: <1991Jun26.184744.16948@convex.com> Date: 26 Jun 91 18:47:44 GMT References: <1991Jun24.172633.5978@nas.nasa.gov> <1991Jun26.140913.1238@Arco.COM> Sender: usenet@convex.com (news access account) Reply-To: patrick@convex.COM (Patrick F. McGehearty) Organization: CONVEX Computer Corporation, Richardson, Tx., USA Lines: 34 Nntp-Posting-Host: mozart.convex.com In article <1991Jun26.140913.1238@Arco.COM> dprcxm@marais.ARCO.COM (Chuck Mosher) writes: >The panel discussion featuring top executives from Cray, Convex, Intel, >and NCube was especially illuminating. Everybody's talking MPP. >Good news for us users. Talk and action are two different things. It took 10 years to go from talk of small scale multiprocessors (early 70's) to commercial availability at the high end (say Cray XMP for example). Of course, time to market pressures are greater today, and there are several examples currently on the market (i.e. Connection Machine and Touchstone). However, these appear (from what I have heard, no direct experience) to require substantial code/algorithm revisions to get anywhere near the potential of the machine. What is the opinion of the super community? Will most super applications be rewritten to make them more adaptable to massive parallelism? or Will special hand crafting for each target architecture continue to be needed to any kind of reasonable performance from MPP systems? If the applications will be rewritten, how long will it be before the revised versions are available? [Chicken and egg problem here: without machines and language features, where is the motivation to rewrite? Without applications, where is the motivation to provide the machines and language features?] A minor example of massive parallelism requirements concerns pseudo-random number generation. Many random number generators are sequential by design. (r(i) = a* r(i-1) + b) However, the desired mathematical properties can be obtained by having N parallel random streams: (r(i,j) = a*r(i-1,j) + b) for j = 1,..,N Then each of N threads of execution can generate repeatable pseudo-random numbers.