Everything about Parallel programming model
Abstraction of parallel computer architecture
In computing, a parallel programming model is an abstraction of parallel computer architecture, with which it is convenient to express algorithms and their composition in programs. The value of a programming model can be judged on its generality: how well a range of different problems can be expressed for a variety of different architectures, and its performance: how efficiently the compiled programs can execute. The implementation of a parallel programming model can take the form of a library invoked from a programming language, as an extension to an existing languages. Wikipedia →
🧭 Start here: a 6-step reading path
- Read the overview: Parallel programming modelA 5-minute orientation
- Skim a recent paper: A data-driven energy management method for parallel PHEVs based on action dependent heuristic dynamic programming (ADHDP) modelInfluential work since 2022
- Pick up a classic book: Job scheduling strategies for parallel processingThe most-reprinted book on the subject
- Read the landmark paper: Parallel genetic programming and its application to trading model inductionCited 63 times
- Go sideways: Concurrent computingA closely related topic
- Go sideways: Single program, multiple dataA closely related topic
📖 Definitions
No dictionary entry for this exact phrase.
🗂️ The subject at a glance
🏆 Landmark papers (most cited)
Parallel genetic programming and its application to trading model induction
Projection-free parallel quadratic programming for linear model predictive control
MapReduce Parallel Programming Model: A State-of-the-Art Survey
The IC* model of parallel computation and programming environment
A Parallel Quadratic Programming Algorithm for Model Predictive Control
A Programming Model Performance Study Using the NAS Parallel Benchmarks
Wide-area parallel programming using the remote method invocation model
A parallel-programming process model
🆕 Influential since 2022
A data-driven energy management method for parallel PHEVs based on action dependent heuristic dynamic programming (ADHDP) model
Energy Management of a Parallel Hybrid Electric Vehicle using Model Predictive Static Programming
Model Predictive Control of a Parallel Plug-In Hybrid Electric Vehicle Relying on Dynamic Programming and Extended Backward-Looking Model
OpenH: A Novel Programming Model and API for Developing Portable Parallel Programs on Heterogeneous Hybrid Servers
Modeling Player Knowledge in a Parallel Programming Educational Game
📚 Books worth reading
Job scheduling strategies for parallel processingJSSPP'99 (1999 San Juan, P.R.), IPPS/SPDP '98 Workshop (1998 Orlando, Fla.) · 1995
Parallel Computing TechnologiesVictor Malyshkin · 2003
Parallel Programming with Co-ArraysRobert W. Numrich, John Ker Reid · 2012- 📕Three-dimensional high-lift analysis using a parallel unstructured multigrid solverDimitri Mavriplis · 1998
Explorations in parallel distributed processingJames L. McClelland · 1988
Recent Advances in the Message Passing InterfaceJesper Larsson Träff · 2012
Towards teracomputingECMWF Workshop on the Use of Parallel Processors in Meteorology (8th 1998 Reading, England) · 1999
New parallel algorithms for direct solution of linear equationsC. Siva Ram Murthy, K. N. Balasubramanya Murthy · 2000
Ranked by number of editions on Open Library, a rough measure of how lasting a book is.
🔗 Related topics
- Concurrent computing Concurrent computing is a form of computing in which several computations are executed concurrently—during overlapping time periods, instead of sequentially—wit…
- Single program, multiple data In computing, single program, multiple data (SPMD) is a term that has been used to refer to computational models for exploiting parallelism whereby multiple…
- Parallel computing Parallel computing is a type of computation in which many calculations or processes are carried out simultaneously. Large problems can often be divided…
- Explicit parallelism In computer programming, explicit parallelism is the representation of concurrent computations using primitives in the form of operators, function calls…
- Multiple instruction, multiple data In computing, multiple instruction, multiple data (MIMD) is a technique employed to achieve parallelism. Machines using MIMD have a number of processor…
- Data-intensive computing Data-intensive computing is a class of parallel computing applications which use a data parallel approach to process large volumes of data typically terabytes…
- Distributed computing Distributed computing is a field of computer science that studies distributed systems, defined as computer systems whose inter-communicating components…
- Bulk synchronous parallel The bulk synchronous parallel (BSP) abstract computer is a bridging model for designing parallel algorithms. It is similar to the parallel random access…