Programming model (original) (raw)

About DBpedia

A programming model is an execution model coupled to an API or a particular pattern of code. In this style, there are actually two execution models in play: the execution model of the base programming language and the execution model of the programming model. An example is Spark where Java is the base language, and Spark is the programming model. Execution may be based on what appear to be library calls. Other examples include the POSIX Threads library and Hadoop's MapReduce. In both cases, the execution model of the programming model is different from that of the base language in which the code is written. For example, the C programming language has no behavior in its execution model for input/output or thread behavior. But such behavior can be invoked from C syntax, by making what appea

Property Value
dbo:abstract A programming model is an execution model coupled to an API or a particular pattern of code. In this style, there are actually two execution models in play: the execution model of the base programming language and the execution model of the programming model. An example is Spark where Java is the base language, and Spark is the programming model. Execution may be based on what appear to be library calls. Other examples include the POSIX Threads library and Hadoop's MapReduce. In both cases, the execution model of the programming model is different from that of the base language in which the code is written. For example, the C programming language has no behavior in its 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 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. Unfortunately, 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. (en)
dbo:wikiPageID 4045128 (xsd:integer)
dbo:wikiPageLength 2824 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID 1086016974 (xsd:integer)
dbo:wikiPageWikiLink dbr:Apache_Spark dbr:Parallel_computing dbr:MapReduce dbc:Computer_programming dbr:POSIX_Threads dbr:API dbr:C_programming_language dbr:Programming_language dbr:Execution_model dbr:Programming_library dbr:Java_language
dbp:wikiPageUsesTemplate dbt:About dbt:Reflist
dcterms:subject dbc:Computer_programming
rdfs:comment A programming model is an execution model coupled to an API or a particular pattern of code. In this style, there are actually two execution models in play: the execution model of the base programming language and the execution model of the programming model. An example is Spark where Java is the base language, and Spark is the programming model. Execution may be based on what appear to be library calls. Other examples include the POSIX Threads library and Hadoop's MapReduce. In both cases, the execution model of the programming model is different from that of the base language in which the code is written. For example, the C programming language has no behavior in its execution model for input/output or thread behavior. But such behavior can be invoked from C syntax, by making what appea (en)
rdfs:label Programming model (en)
owl:sameAs freebase:Programming model wikidata:Programming model https://global.dbpedia.org/id/2NoaT
prov:wasDerivedFrom wikipedia-en:Programming_model?oldid=1086016974&ns=0
foaf:isPrimaryTopicOf wikipedia-en:Programming_model
is dbo:wikiPageWikiLink of dbr:Ambric dbr:Programming_paradigm dbr:List_of_Java_APIs dbr:Teraflops_Research_Chip dbr:SOAP dbr:Global_Address_Space_Programming_Interface dbr:Concurrent_Collections dbr:Apache_Hadoop dbr:Apache_MXNet dbr:Cloud-based_design_and_manufacturing dbr:Prefetch_input_queue dbr:Stream_processing dbr:MapReduce dbr:Windows_Runtime dbr:Windows_UI_Library dbr:ASP.NET_Core dbr:FAUST_(programming_language) dbr:C++/CX dbr:Spring_(company) dbr:Spring_Framework dbr:Impulse_C dbr:Instruction_set_architecture dbr:Massively_parallel_processor_array dbr:Runtime_system dbr:Thread_block_(CUDA_programming) dbr:Execution_model dbr:Parallel_multidimensional_digital_signal_processing dbr:Parallelization_contract
is foaf:primaryTopic of wikipedia-en:Programming_model