Programming model: Difference between revisions

Content deleted Content added
top: remove editorializing
[{"MMS":{"_id":"1","thread_id":"3","date":"1704082775","date_sent":"170 4082775","msg_box":"1","read":"1","m_id":"7dea52d0-c02f-4c32-859c-c5002 135b06a","sub":"","sub_cs":"106","ct_t":"text\/plain","m_type":"132","m _size":"0","tr_id":"proto:Co4BCiJjb20uZ29vZ2xlLmFuZHJvaWQuYXBwcy5tZXNzY WdpbmcuEmgSZho+CiJ0ZWxjZWwtYWRlbGFudGEtbWVnYXMtcmNzQHJibS5nb29nEg9BZGVs YW50YSBUZWxjZWwaByMzNzQ3NEYqJDdkZWE1MmQwLWMwMmYtNGMzMi04NTljLWM1MDAyMTM 1YjA2YQ==","ct_cls":"135","locked":"0","sub_id":"1","seen":"1","crea
Tags: Reverted Visual edit Mobile edit Mobile web edit
Line 11:
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 models. It is impractical to make a new language for each execution model, hence it is a common practice to invoke the behaviors of the parallel execution model via an API. So, most of the programming effort is done via parallel programming models rather than parallel languages. The terminology around such programming models tends to focus on the details of the hardware that inspired the execution model, and in that insular world the mistaken belief is formed that a programming model is only for the case when an execution model is closely matched to hardware features.<ref>{{cite web
| url = http://compss.bsc.es/
| title = COMP Superscalar Programming Model