Definition of the Subject
The Single Program – Multiple Data (SPMD) parallel programming paradigm is premised on the concept that all processes participating in the execution of a program work cooperatively to execute that program, but at any given instance different processes may execute different instruction-streams, and act on different data and on different sections in the program, and whereby these processes dynamically self-schedule themselves, according to the program workflow and through synchronization constructs embedded in the application program. SPMD programs comprise of serial, parallel, and replicate sections.
Introduction
The (SPMD) Single Program-Multiple Data model [1–6] is premised on the concept that all processes participating in the (parallel) execution of a program work cooperatively to execute this program, but at any given instance, through synchronization constructs embedded in the application program, different processes may execute different...
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Bibliography
Darema-Rogers F (1984) IBM Internal Communication, Jan 1984
Darema-Rogers F, George D, Norton VA, Pfister G (1984) A VM parallel environment. Proceedings of the IBM Kingston Parallel Processing Symposium, 27–29 Nov 1984 (IBM Confidential)
Darema-Rogers F, George DA, Norton VA, Pfister GF (1985) A VM based parallel environment. IBM research report, RC11225
Darema-Rogers F, George DA, Norton VA, Pfister GF (1985) Environment and system interface for VM/EPEX. IBM research report R11381, 9/19/1985
Darema-Rogers F, George DA, Norton VA, Pfister GF (1985) Using a single-program-multiple-data model for parallel execution of scientific applications. SIAM Conference on Parallel Processing for Scientific Computing, November, 1985, and IBM research report R11552, 11/19/1985
Darema F, George DA, Norton VA, Pfister GF (1988) A single-program-multiple-data computational model for EPEX/FORTRAN. Parallel Comput 7:11–24 (received April 1987 upon publication release by IBM - IBM Technical Disclosure Bulletin 29(9) February 1987)
Pfister G et al (1984) The research parallel processor prototype (RP3). Proceedings of the IBM Kingston Parallel Processing Symposium, 27–29 Nov 1984 (IBM Confidential); and Proceedings of the ICPP, August 1985
Darema F Historical and future perspectives on the SPMD computational model. – Forthcoming Publication
MPI standard – draft released by the MPI Forum. http://www.mcs.anl.gov/Projects/mpi/standard.html
PVM – Parallel Visrtual Machine. http://www.csm.ornl.gov/pvm/pvm_home.html
Foster I, Kesselman C (eds) (1999) The grid: blueprint for a new computing infrastructure. Morgan Kaufmann
OpenMP. http://openmp.org/wp/
Yelick KA, Semenzato L, Pike G, Miyamoto C, Liblit B, Krishnamurthy A, Hilfinger PN, Graham SL, Gay D, Colella P, Aiken A (1998) Concurrency: practice and experience. vol 10, No. 11–13, September-November. An earlier version was presented at the Workshop on Java for High-Performance Network Computing, Palo Alto, CA, Feb 1998
Culler DE, Arpaci-Dusseau AC, Goldstein SC, Krishnamurthy A, Lumetta S, Eicken T, Yelick KA (1993) Parallel programming in Split-C. SC, pp 262–273
El-Ghazawi T, Carlson W, Sterling T, Yelick KA (2005) UPC: distributed shared-memory programming. Wiley, Hoboken
Bronevetsky G, Marques D, Pingali K, Stodghill P (2000) Automated application-level checkpointing of MPI programs. ACM SIGPLAN 38(10):84–94
Bronevetsky G, Marques D, Pingali K, Szwed P, Schulz M (2004) Application-level checkpointing for shared memory programs. ACM Comp Ar 32(5):235–247
George DA MVS/XA EPEX – Environment for parallel execution. IBM research report RC 13158, 9/28/87
VM/System Product (VM/SP). http://www-03.ibm.com/ibm/history/exhibits/mainframe/mainframe_PP3081.html (and MVS/XA also supported)
Stone JM, Darema-Rogers F, Norton VA, Pfister GF Introduction to the VM/EPEX FORTRAN Preprocessor. IBM research report RC 11407, 9/30/85
Stone JM, Darema-Rogers F, Norton VA, Pfister GF The VM/EPEX FORTRAN Preprocessor Reference. IBM research report RC 11408, 9/30/85
Bolmarcich T, Darema-Rogers F Tutorial for EPEX/FORTRAN Program Parallelization and Execution. IBM research report RC12515, 2/18/87
Whet-Ling C, Norton A (1986) VM/EPEX C preprocessor user’s manual. Version 1.0. Technical report RC 12246, IBM T.J. Watson Research Center, Yorktown Heights, NY, October 1986
Gottlieb A, Kruskal CP (1981) Coordinating parallel processors: a partial unification. Computer Architecture News, pp 16–24, October 1981
Darema-Rogers F I/O capabilities in the VM/EPEX system. IBM research report, RC 12219, 10/9/86
Darema F (1987) Applications environment for the IBM research parallel processor prototype (RP3). IBM research report RC 12627, 3/27/87; and Proceedings of the International Conference on Supercomputing (ICS), (published by Springer, Athens, Greece, June 1988
GPFS:http://www.almaden.ibm.com/StorageSystems/projects/gpfs
Schmuck F, Haskin R (2002) GPFS: a shared-disk file system for large computing clusters. (pdf). Proceedings of the FAST’02 Conference on File and Storage Technologies. USENIX, Monterey, California, USA, pp 231–244. ISBN 1-880446-03-0. http://www.usenix.org/events/fast02/full_papers/schmuck/schmuck.pdf Accessed 18 Jan 2008
ARC3D: Pulliam TH Euler and thin layer navier stokes codes: ARC2D, ARC3D. Computational fluid dynamics, A workshop held at the University of Tennessee Space Institute, UTSI publ. E02-4005-023-84, 1984 {other related application programs parallelized included: SIMPLE and HYDRO-1}
Darema-Rogers F, Kirkpatrick S, Norton VA (1987) Parallel techniques for chip placement by simulated annealing. Proceedings of the International Conference on Computer-Aided Design. pp 91–94
Darema F, Kirkpatrick S, Norton VA (1987) Simulated annealing on shared memory parallel systems. IBM Journal of R&D 31:391–402
Jayaraman R, Darema F Error analysis of parallel simulated annealing techniques. Proceedings of the ICCD’88, Rye, NY, 10/3-5/88
Greening D, Darema F Rectangular spatial decomposition methods for parallel simulated annealing. IBM research report, RC14636, 5/2/89, and in the Proceedings of the International Conference on Supercomputing ‘89. Crete-Greece
Darema F (2009) Report on cyberifrastructures of cyber-applications-systems & cyber-systems-software, submitted for external publication
DDDAS. www.cise.nsf.gov/dddas
DDDAS. www.dddas.org
Darema F (2005) Grid computing and beyond: the context of dynamic data driven applications systems. Proc IEEE (Special Issue on Grid Computing) 93(3):692– 697
Darema F (2000) New software architecture for complex applications development and runtime support. Int J High-Perform Comput (Special Issue on Programming Environments, Clusters, and Computational Grids For Scientific Computing) 14(3)
GRADS project. http://www.hipersoft.rice.edu/grads/
Adve VS, Sanders WH A compiler-enabled model- and measurement-driven adaptation environment for dependability and performance. – http://www.perform.csl.illinois.edu/projects/newNSFNGS.html LLVL compiler – http://llvlm.org
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
Darema, F. (2011). SPMD Computational Model. In: Padua, D. (eds) Encyclopedia of Parallel Computing. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-09766-4_26
Download citation
DOI: https://doi.org/10.1007/978-0-387-09766-4_26
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