Type architectures, shared memory, and the corollary of modest potential

Manabrea' s remark, referring to a design option for Babbage' s Analytical Engine, has been cited (Hockney & Jesshope 198 1) as the earliest reference to parallelism in computer design. The fact that Babbage considered parallelism allows us to conj ecture that nearly a century and a half ago he understood the obvious, but nevertheless, Fundamental Law of Parallel Computation: A parallel solution utilizing p processors can improve the best sequential solu­ tion by at most a factor of p. T his law's truth follows from the observation that a speedup greater than a factor of p implies the existence of a better sequential solution. It provides an upper limit on achievable performance that has been difficult to approach in practice, much less to achieve. After only two decades of serious study (Hockney & Jesshope 198 1) and only preliminary analysis of the limits to speedup (Hwang & Briggs 1984 , p. 28) , it is certainly premature to be pessimistic about our ultimate success at attaining the maximum predicted benefits of parallelism. Still, there are reasons to be cautious. As a practical matter the scientific and commercial problems that are most in need of speedup are the so-called compute-bound problems (Bardon & Curtis 1983) since the I/O-bound problems would yield to better data transmission technology not more processing capability (Boral & DeWitt

[1]  John McCarthy,et al.  Recursive functions of symbolic expressions and their computation by machine, Part I , 1960, Commun. ACM.

[2]  Revised report on the algorithmic language ALGOL 60 , 1963, Comput. J..

[3]  M. Mcluhan Understanding Media: The Extensions of Man , 1964 .

[4]  S. Rendón Understanding media : the extensions of man , 1967 .

[5]  Louis A. Hageman,et al.  Iterative Solution of Large Linear Systems. , 1971 .

[6]  Ahmed Sameh,et al.  The Illiac IV system , 1972 .

[7]  Gordon Bell,et al.  C.mmp: a multi-mini-processor , 1972, AFIPS '72 (Fall, part II).

[8]  Duncan H. Lawrie,et al.  Access and Alignment of Data in an Array Processor , 1975, IEEE Transactions on Computers.

[9]  Franco P. Preparata,et al.  The cube-connected-cycles: A versatile network for parallel computation , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[10]  Uzi Vishkin,et al.  Finding the Maximum, Merging, and Sorting in a Parallel Computation Model , 1981, J. Algorithms.

[11]  Leslie G. Valiant,et al.  Universal schemes for parallel communication , 1981, STOC '81.

[12]  Allan Gottlieb A historical guide to the ultracomputer literature , 1981 .

[13]  Franco P. Preparata,et al.  The cube-connected-cycles: A versatile network for parallel computation , 1979, 20th Annual Symposium on Foundations of Computer Science (sfcs 1979).

[14]  Howard Jay Siegel,et al.  PASM: A Partitionable SIMD/MIMD System for Image Processing and Pattern Recognition , 1981, IEEE Transactions on Computers.

[15]  Allan Borodin,et al.  Routing, merging and sorting on parallel models of computation , 1982, STOC '82.

[16]  William B. Ackerman,et al.  Data Flow Languages , 1899, Computer.

[17]  Burton J. Smith Architecture And Applications Of The HEP Multiprocessor Computer System , 1982, Optics & Photonics.

[18]  Lawrence Snyder,et al.  Introduction to the configurable, highly parallel computer , 1982, Computer.

[19]  Daniel Gajski,et al.  CEDAR: a large scale multiprocessor , 1983, CARN.

[20]  L. Adams Iterative algorithms for large sparse linear systems on parallel computers , 1983 .

[21]  David J. DeWitt,et al.  Database Machines: An Idea Whose Time Passed? A Critique of the Future of Database Machines , 1989, IWDM.

[22]  A. Gottleib,et al.  The nyu ultracomputer- designing a mimd shared memory parallel computer , 1983 .

[23]  Very Long Instruction Word architectures and the ELI-512 , 1983, ISCA '83.

[24]  Ehud Shapiro,et al.  Systems programming in concurrent prolog , 1984, POPL.

[25]  L. Snyder,et al.  Parallel Programming and the Poker Programming Environment , 1984, Computer.

[26]  Lawrence Snyder,et al.  Supercomputers and VLSI: The Effect of Large-Scale Integration on Computer Architecture , 1984, Adv. Comput..

[27]  Charles L. Seitz,et al.  The cosmic cube , 1985, CACM.

[28]  Marc Snir,et al.  On Parallel Searching , 2011, SIAM J. Comput..

[29]  Robert H. Thomas,et al.  Performance Measurements on a 128-Node Butterfly Parallel Processor , 1985, ICPP.

[30]  Kevin P. McAuliffe,et al.  The IBM Research Parallel Processor Prototype (RP3): Introduction and Architecture , 1985, ICPP.

[31]  Stephen A. Cook,et al.  Upper and Lower Time Bounds for Parallel Random Access Machines without Simultaneous Writes , 1986, SIAM J. Comput..

[32]  Marina C. Chen A parallel language and its compilation to multiprocessor machines or VLSI , 1986, POPL '86.

[33]  Kai Hwang,et al.  Computer architecture and parallel processing , 1984, McGraw-Hill Series in computer organization and architecture.

[34]  David Notkin,et al.  Programming Solutions to the Algorithm Contraction Problem , 1986, ICPP.

[35]  H. F. Jordan,et al.  Is SOR Color-Blind? , 1986 .

[36]  Mark A. Franklin,et al.  On Designing Interconnection Networks for Multiprocessors , 1986, ICPP.

[37]  Francine Berman,et al.  On Mapping Parallel Algorithms into Parallel Architectures , 1987, J. Parallel Distributed Comput..

[38]  Eli Upfal,et al.  How to share memory in a distributed system , 1984, JACM.