Parallel programming model: Difference between revisions

Content deleted Content added
Merbeth (talk | contribs)
No edit summary
m (fix typo)
Line 1:
A '''parallel programming model''' is a set of software technologies to express [[parallel algorithm]]s and match applications with the underlying parallel systems. It encloses the areas of [[application]]s, [[programming language]]s, [[compiler]]s, [[library (computer science)|libraries]], [[communications system]]s, and [[parallel I/O]]. People have to choose a proper parallel programming model or a form of mixture of them to develop their parallel applications on a particular platform.
 
Parallel models are implemented in several ways: as libraries invoked from traditional sequential languages, as language extensions, or complete new execution models. They are also roughly categoried for two kinds of systems: shared-memory system and distributed-memory system, though the lines between them are largely bluredblurred nowadays.
 
A programming model is usually judged by its expressibility and simplicity, which are by all meanings conflicting factors. The ultimate goal is to improve productivity of programming.