Content deleted Content added
Loadmaster (talk | contribs) →top: ce |
Patelthekanu (talk | contribs) m Added links to Execution Model for all instances on this page. |
||
Line 5:
| title = What is MapReduce
| author = IBM
}}</ref> In both cases, the [[execution model]] is different from that of the base language in which the code is written. For example, the [[C programming language]] has no [[execution model]] for input/output or thread behavior. But such behavior can be invoked from C syntax, by making, what appears to be, a call to a normal C library.
What distinguishes a programming model from a normal library is that the behavior of the call cannot be understood in terms of the language the program is written in. For example, the behavior of calls to the POSIX thread library cannot be understood in terms of the C language. The reason is that the call invokes an [[execution model]] that is different from the [[execution model]] of the language. This invocation of an outside [[execution model]] is the defining characteristic of a programming ''model'', in contrast to a programming ''language''.
In [[parallel computing]], the [[execution model]] often must expose features of the hardware in order to achieve high performance. The large amount of variation in parallel hardware causes a concurrent need for a similarly large number of parallel [[execution
| url = https://asc.llnl.gov/content/assets/docs/exascale-pmWG.pdf
| title = Programming Models
|