Definition
The Parallel Random Access Machine (PRAM) is an abstract model for parallel computation which assumes that all the processors operate synchronously under a single clock and are able to randomly access a large shared memory. In particular, a processor can execute an arithmetic, logic, or memory access operation within a single clock cycle.
Discussion
Introduction
Parallel Random Access Machines (PRAMs) were introduced in the late 1970s as a natural generalization to parallel computation of the Random Access Machine(RAM) model. The RAM model is widely used as the basis for designing and analyzing sequential algorithms. The PRAM model assumes the presence of a number of processors, each identified by a unique id, which have access to a single unbounded shared memory. The processors operate synchronously under a single clock such that each processor can execute an arithmetic or logic operation or a memory access operation within a single clock cycle. In general, each processor...
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsBibliography
Brent R (1974) The parallel evaluation of general arithmetic expressions. JACM 21(2):201–208
Fortune S, Wyllie J (1978) Parallelism in random access machines. In: Proceedings of the tenth ACM symposium on theory of computing. San Diego, CA, pp 114–118
Goldschlager L (1978) A unified approach to models of synchronous parallel machines. In: Proceedings of the tenth ACM symposium on theory of computing. San Diego, CA, pp 89–94
Greenlaw R, Hoover HJ, Ruzzo WL (1995) Limits to Parallel Computation: P-Completeness Theory. In: Topics in parallel computation. Oxford University Press, Oxford
Hillis WD, Steele GL (1986) Data parallel algorithms. Commun ACM 29(12):1170–1183
JaJa J (1992) An introduction to parallel algorithms. Addison Wesley Publishing Co., Reading, MA
Karp RM, Ramachandran V (1990) Parallel algorithms for shared-memory machines. In: van Leeuwen J (ed) Handbook of theoretical computer science, North Holland, Amsterdam, The Netherlands, Chapter 17, pp 869–942
Keller J, Kessler C, Traff J (2001) Practical PRAM programming. Wiley, New York
Ladner R, Fisher M (1980) Parallel prefix computations. JACM 27(4):831–838
Pippenger N (1979) On simultaneous resource bounds. In: Proceedings twentieth annual IEEE symposium on foundations of computer science. San Juan, Puerto Rico, pp 307–311
Shiloach Y, Vishkin U (1982) An O(n2 log n) parallel max-flow algorithm. J Algorithms 3(2):128–146
Wen X, Vishkin U (2008) FPGA-based prototype of a PRAM-on-chip processor. In: Proceedings of the 2008 ACM conference on computing frontiers. Ischia, Italy, pp 55–66
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer Science+Business Media, LLC
About this entry
Cite this entry
JaJa, J.F. (2011). PRAM (Parallel Random Access Machines). In: Padua, D. (eds) Encyclopedia of Parallel Computing. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-09766-4_23
Download citation
DOI: https://doi.org/10.1007/978-0-387-09766-4_23
Publisher Name: Springer, Boston, MA
Print ISBN: 978-0-387-09765-7
Online ISBN: 978-0-387-09766-4
eBook Packages: Computer ScienceReference Module Computer Science and Engineering