Meta tags:
Headings (most frequently used words):
concurrency, computer, science, contents, related, concepts, issues, theory, practice, see, also, references, further, reading, external, links, models, logics,
Text of the page (most frequently used words):
and (51), the (44), #concurrency (36), concurrent (35), systems (27), computing (23), for (21), programming (21), parallel (20), isbn (17), computer (16), models (15), distributed (14), edit (14), 978 (14), can (14), this (11), from (11), theory (10), articles (9), model (9), system (9), science (8), with (8), language (8), wikipedia (7), processing (7), parallelism (7), process (7), problem (7), control (7), some (7), these (7), have (7), different (6), shared (6), general (6), calculus (6), design (6), see (6), resources (6), including (6), are (6), that (6), logic (6), about (5), may (5), use (5), page (5), hardware (5), temporal (5), wiley (5), cite (5), which (5), used (5), such (5), execution (5), article (5), contents (4), search (4), needing (4), all (4), references (4), category (4), memory (4), processor (4), simultaneous (4), data (4), performance (4), links (4), springer (4), processes (4), help (4), actor (4), tools (4), practice (4), concepts (4), their (4), because (4), has (4), example (4), issues (4), whom (4), not (4), logics (4), other (4), while (4), been (4), tasks (4), multiple (4), related (4), discussion (4), hide (4), move (4), sidebar (4), languages (3), toggle (3), view (3), additional (3), terms (3), using (3), non (3), was (3), august (3), cs1 (3), url (3), software (3), algorithm (3), cache (3), cluster (3), array (3), coordination (3), thread (3), algorithms (3), multi (3), calculi (3), indeterminacy (3), 2012 (3), 2013 (3), techniques (3), state (3), practical (3), 1996 (3), morgan (3), kaufmann (3), journal (3), communication (3), computation (3), mcgraw (3), hill (3), operating (3), threads (3), space (3), also (3), access (3), number (3), computational (3), sharing (3), sources (3), through (3), others (3), changes (3), actions (3), closed (3), petri (3), time (3), main (3), table (2), contact (2), privacy (2), policy (2), you (2), organization (2), wikimedia (2), inc (2), commons (2), examples (2), 2023 (2), specifically (2), marked (2), weasel (2), worded (2), phrases (2), april (2), 2007 (2), maint (2), miscellaneous (2), deletion (2), short (2), description (2), wikidata (2), starvation (2), scalability (2), race (2), condition (2), slowdown (2), deterministic (2), deadlock (2), automatic (2), problems (2), openmp (2), global (2), massively (2), pipelined (2), dataflow (2), architecture (2), application (2), synchronization (2), coherence (2), multiprocessing (2), instruction (2), elements (2), law (2), analysis (2), pram (2), task (2), network (2), high (2), cloud (2), dining (2), philosophers (2), ccs (2), csp (2), patterns (2), external (2), 2014 (2), handbook (2), signal (2), john (2), sons (2), jeff (2), 2002 (2), ieee (2), press (2), further (2), reading (2), colin (2), 2001 (2), semantics (2), mathematics (2), protocol (2), based (2), link (2), conference (2), nielsen (2), sassone (2), winskel (2), between (2), lee (2), sangiovanni (2), vincentelli (2), december (2), doi (2), pdf (2), framework (2), microsoft (2), research (2), structured (2), pattern (2), object (2), oriented (2), nodes (2), include (2), they (2), implementation (2), often (2), introduces (2), correctness (2), states (2), needed (2), according (2), encompasses (2), implement (2), more (2), generally (2), communications (2), resource (2), but (2), database (2), section (2), learn (2), remove (2), message (2), reliable (2), improve (2), assertions (2), sequences (2), tree (2), way (2), possible (2), progression (2), denotation (2), behavior (2), called (2), theoretical (2), demonstrated (2), provide (2), variety (2), understanding (2), reasoning (2), simple (2), communicating (2), nets (2), random (2), formalisms (2), modeling (2), developed (2), coordinating (2), exchange (2), throughput (2), being (2), information (2), managing (2), interactions (2), only (2), ability (2), execute (2), into (2), free (2), merging (2), here (2), appearance (2), upload (2), file (2), history (2), read (2), english (2), bahasa (2), log (2), create (2), account (2), donate (2), menu (2), add, topic, mobile, cookie, statement, statistics, developers, code, conduct, legal, safety, contacts, disclaimers, text, available, under, apply, site, agree, registered, trademark, profit, foundation, creative, attribution, sharealike, license, rendered, parsoid, last, edited, september, 2026, utc, hidden, categories, errors, missing, periodical, noindexed, retrieved, https, org, index, php, title, concurrency_, computer_science, oldid, 1375542906, lockout, embarrassingly, stampede, parallelization, zpl, tbb, upc, rocm, raftlib, pthreads, pvm, extensions, openacc, openhmpp, opencl, mpi, gpuopen, arrays, amp, dryad, cuda, coarray, fortran, cilk, charm, hpx, chapel, boost, ateji, apis, acceleration, grid, beowulf, coma, numa, uma, asymmetric, symmetric, multiprocessor, vector, superscalar, mimd, misd, associative, simt, simd, sisd, flynn, taxonomy, blocking, explicit, implicit, stream, checkpointing, barrier, invalidation, window, fiber, speedup, karp, flatt, metric, cost, efficiency, gustafson, amdahl, pem, scout, cmt, clustered, cooperative, preemptive, spmt, speculative, heterogenous, smt, multithreading, pipeline, loop, bit, levels, systolic, gpgpu, manycore, sleeping, barber, readers, writers, producer, consumer, cigarette, smokers, aba, classic, join, pepa, api, ambient, lotos, acp, linearizability, users, hash, tables, structures, given, scaleconf, presentation, www, virtual, library, algebra, diary, prof, luca, aceto, blog, wolter, aufl, london, berlin, 9783642290329, resilience, assessment, evaluation, bhattacharyya, second, 2nd, new, york, 1007, 4614, 6859, 9781461468592, distefano, bruneo, 2015, 1st, somerset, 9781119131144, quantitative, assessments, methodologies, magee, kramer, 2006, 470, 09355, java, garg, vijay, 471, 03600, kurki, suonio, reino, 2005, 540, 23342, reactive, tanenbaum, andrew, van, steen, maarten, prentice, hall, 088893, principles, paradigms, lynch, nancy, 55860, 348, roscoe, 387, 98717, modal, properties, requires, june, 1981, foundations, doctoral, dissertation, mit, 1721, 6935, hdl, william, clinger, frederick, knabe, channel, choice, parle, 1992, mogens, vladimiro, glynn, 1993, rex, school, symposium, relationships, edward, alberto, 1998, 1229, 1109, 736561, 1217, transactions, aided, integrated, circuits, comparing, keller, jörg, christoph, keßler, jesper, träff, filman, robert, daniel, friedman, 1984, 022439, coordinated, campbell, johnson, ralph, miller, ade, toub, stephen, 2010, 7356, 5159, net, scott, smolka, 607, 13264261, s2cid, 1145, 242223, 242252, acm, surveys, strategic, directions, cleaveland, rance, reilly, media, 9781449335922, haskell, zomaya, albert, professional, 0070730205, quinn, michael, jay, 1994, 0070512948, pearson, 0132143011, series, 0123747501, interface, july, 2008, 0470128725, x10, sheaf, rust, ptolemy, project, pony, partitioned, address, concur, international, gordon, pask, erlang, elixir, cadp, construction, clojure, client, server, chu, explicitly, timeslices, either, another, yield, coprocesses, require, inclusion, kind, somewhere, underlying, those, arbiters, possibility, major, implications, arbitration, raises, causes, explosion, even, cause, infinite, checking, unbounded, nondeterminism, arbiter, usually, considered, than, involve, arbitrary, dynamic, interaction, whereas, predefined, well, base, goals, designed, operate, indefinitely, recovery, failure, terminate, unexpectedly, form, transparent, entities, compete, share, single, complexities, competition, shielded, programmer, management, robustness, how, when, please, unsourced, material, challenged, removed, adding, citations, does, any, various, types, reason, allow, made, pass, build, principal, writing, specifications, lamport, hennessy, milner, action, linear, mathematically, characterized, its, behaviors, denote, representation, theorem, provides, fairly, represent, sense, receive, outside, modeled, mathematical, denoted, constructed, increasingly, better, approximations, initial, approximating, function, construct, meaning, follows, two, phase, commit, proliferation, motivated, researchers, develop, ways, unify, tagged, common, defining, similar, unified, denotational, primarily, intended, support, specification, entire, development, cycle, proof, testing, simulation, mechanisms, passing, trace, monoids, reo, scoop, linda, tuple, spaces, sequential, bridging, bsp, bulk, synchronous, machine, active, field, one, first, proposals, seminal, work, early, 1960s, years, since, wide, carl, adam, entails, finding, scheduling, minimize, maximize, response, allocation, computations, interact, each, executed, paths, extremely, large, resulting, outcome, source, leading, deadlocks, indeterminate, ipc, facilitating, inter, ensuring, consistency, integrity, threading, units, executes, independently, cpu, cores, allows, program, level, slicing, perform, programs, exhibit, both, neither, broader, concept, several, ideas, web, applications, embedded, refers, context, switching, improves, responsiveness, modern, uses, disambiguation, welcome, participate, will, decide, whether, result, redirected, draftified, feel, notice, before, afd, 5bwikipedia, 3aarticles, 2fconcurrency, 28computer, jstor, scholar, books, newspapers, news, find, deleted, merge, nominated, redirects, company, corporation, serial, manner, encyclopedia, item, projects, printable, version, download, print, export, switch, legacy, parser, get, shortened, permanent, what, talk, tiếng, việt, українська, türkçe, svenska, shqip, русский, română, português, polski, norsk, bokmål, nederlands, melayu, 한국어, 日本語, italiano, ido, indonesia, magyar, עברית, suomi, فارسی, euskara, español, ελληνικά, deutsch, dansk, català, বাংলা, العربية, subsection, top, personal, special, pages, recent, community, portal, contribute, current, events, navigation, jump, content,
Text of the page (random words):
لعربية বাংলা català dansk deutsch ελληνικά español euskara فارسی suomi עברית magyar bahasa indonesia ido italiano 日本語 한국어 bahasa melayu nederlands norsk bokmål polski português română русский simple english shqip svenska türkçe українська tiếng việt 粵語 中文 edit links article talk english read edit view history tools tools move to sidebar hide actions read edit view history general what links here related changes upload file permanent link page information cite this page get shortened url switch to legacy parser print export download as pdf printable version in other projects wikimedia commons wikidata item appearance move to sidebar hide from wikipedia the free encyclopedia ability to execute a task in a non serial manner concurrent computer redirects here for the company see concurrent computer corporation this article has been nominated for merging into concurrent computing you are welcome to participate in the merging discussion which will decide whether to merge it into concurrent computing this discussion may also result in the article being deleted redirected or draftified feel free to improve the article but do not remove this notice before the discussion is closed find sources concurrency computer science news newspapers books scholar jstor 5b 5bwikipedia 3aarticles for deletion 2fconcurrency 28computer science 29 5d 5d afd for a more practical discussion see concurrent computing for other uses see concurrency disambiguation in computer science concurrency refers to the ability of a system to execute multiple tasks through simultaneous execution or time sharing context switching sharing resources and managing interactions concurrency improves responsiveness throughput and scalability in modern computing including 1 2 3 4 5 operating systems and embedded systems distributed systems parallel computing and high performance computing database systems web applications and cloud computing related concepts edit concurrency is a broader concept that encompasses several related ideas including 1 2 3 4 5 parallelism simultaneous execution on multiple processing units parallelism executes tasks independently on multiple cpu cores concurrency allows for multiple threads of control at the program level which can use parallelism or time slicing to perform these tasks programs may exhibit parallelism only concurrency only both parallelism and concurrency neither 6 multi threading and multi processing shared system resources synchronization coordinating access to shared resources coordination managing interactions between concurrent tasks concurrency control ensuring data consistency and integrity inter process communication ipc facilitating information exchange issues edit because computations in a concurrent system can interact with each other while being executed the number of possible execution paths in the system can be extremely large and the resulting outcome can be indeterminate concurrent use of shared resources can be a source of indeterminacy leading to issues such as deadlocks and resource starvation 7 design of concurrent systems often entails finding reliable techniques for coordinating their execution data exchange memory allocation and execution scheduling to minimize response time and maximize throughput 8 theory edit concurrency theory has been an active field of research in theoretical computer science one of the first proposals was carl adam petri s seminal work on petri nets in the early 1960s in the years since a wide variety of formalisms have been developed for modeling and reasoning about concurrency models edit a number of formalisms for modeling and understanding concurrent systems have been developed including 9 the parallel random access machine 10 the actor model computational bridging models such as the bulk synchronous parallel bsp model petri nets process calculi calculus of communicating systems ccs communicating sequential processes csp model π calculus tuple spaces e g linda simple concurrent object oriented programming scoop reo coordination language trace monoids some of these models of concurrency are primarily intended to support reasoning and specification while others can be used through the entire development cycle including design implementation proof testing and simulation of concurrent systems some of these are based on message passing while others have different mechanisms for concurrency the proliferation of different models of concurrency has motivated some researchers to develop ways to unify these different theoretical models for example lee and sangiovanni vincentelli have demonstrated that a so called tagged signal model can be used to provide a common framework for defining the denotational semantics of a variety of different models of concurrency 11 while nielsen sassone and winskel have demonstrated that category theory can be used to provide a similar unified understanding of different models 12 the concurrency representation theorem in the actor model provides a fairly general way to represent concurrent systems that are closed in the sense that they do not receive communications from outside other concurrency systems e g process calculi can be modeled in the actor model using a two phase commit protocol 13 the mathematical denotation denoted by a closed system s is constructed increasingly better approximations from an initial behavior called s using a behavior approximating function progression s to construct a denotation meaning for s as follows 14 denote s i ω progression s i s in this way s can be mathematically characterized in terms of all its possible behaviors logics edit various types of temporal logic 15 can be used to help reason about concurrent systems some of these logics such as linear temporal logic and computation tree logic allow assertions to be made about the sequences of states that a concurrent system can pass through others such as action computational tree logic hennessy milner logic and lamport s temporal logic of actions build their assertions from sequences of actions changes in state the principal application of these logics is in writing specifications for concurrent systems 7 practice edit this section does not cite any sources please help improve this section by adding citations to reliable sources unsourced material may be challenged and removed april 2007 learn how and when to remove this message concurrent programming encompasses programming languages and algorithms used to implement concurrent systems concurrent programming is usually considered by whom to be more general than parallel programming because it can involve arbitrary and dynamic patterns of communication and interaction whereas parallel systems generally according to whom have a predefined and well structured communications pattern the base goals of concurrent programming include correctness performance and robustness concurrent systems such as operating systems and database management systems are generally designed by whom to operate indefinitely including automatic recovery from failure and not terminate unexpectedly see concurrency control some example needed concurrent systems implement a form of transparent concurrency in which concurrent computational entities may compete for and share a single resource but the complexities of this competition and sharing are shielded from the programmer because they use shared resources concurrent systems in general according to whom require the inclusion of some example needed kind of arbiter somewhere in their implementation often in the underlying hardware to control access to those resources the use of arbiters introduces the possibility of indeterminacy in concurrent computation which has major implications for practice including correctness and performance for example arbitration introduces unbounded nondeterminism which raises issues with model checking because it causes explosion in the state space and can even cause models to have an infinite number of states some concurrent programming models include coprocesses and deterministic concurrency in these models threads of control explicitly yield their timeslices either to the system or to another process see also edit dining philosophers problem chu space client server network nodes clojure cluster nodes concurrency control concurrent computing concurrent object oriented programming concurrency pattern construction and analysis of distributed processes cadp d programming language distributed system elixir programming language erlang programming language go programming language gordon pask international conference on concurrency theory concur openmp parallel computing partitioned global address space pony programming language processes ptolemy project rust programming language sheaf mathematics threads x10 programming language structured concurrency references edit 1 2 operating system concepts wiley 29 july 2008 isbn 978 0470128725 1 2 computer organization and design the hardware software interface the morgan kaufmann series in computer architecture and design morgan kaufmann 2012 isbn 978 0123747501 1 2 distributed systems concepts and design pearson 2012 isbn 978 0132143011 1 2 quinn michael jay 1994 parallel computing theory and practice mcgraw hill isbn 978 0070512948 1 2 zomaya albert y 1996 parallel and distributed computing handbook mcgraw hill professional isbn 978 0070730205 parallel and concurrent programming in haskell o reilly media 2013 isbn 9781449335922 1 2 cleaveland rance scott smolka december 1996 strategic directions in concurrency research acm computing surveys 28 4 607 doi 10 1145 242223 242252 s2cid 13264261 campbell colin johnson ralph miller ade toub stephen august 2010 parallel programming with microsoft net microsoft press isbn 978 0 7356 5159 3 filman robert daniel friedman 1984 coordinated computing tools and techniques for distributed software mcgraw hill isbn 978 0 07 022439 1 keller jörg christoph keßler jesper träff 2001 practical pram programming john wiley and sons lee edward alberto sangiovanni vincentelli december 1998 a framework for comparing models of computation pdf ieee transactions on computer aided design of integrated circuits and systems 17 12 1217 1229 doi 10 1109 43 736561 mogens nielsen vladimiro sassone glynn winskel 1993 relationships between models of concurrency rex school symposium cite conference cs1 maint miscellaneous url link frederick knabe a distributed protocol for channel based communication with choice parle 1992 william clinger june 1981 foundations of actor semantics mathematics doctoral dissertation mit hdl 1721 1 6935 cite journal cite journal requires journal help roscoe colin 2001 modal and temporal properties of processes springer isbn 978 0 387 98717 0 further reading edit lynch nancy a 1996 distributed algorithms morgan kaufmann isbn 978 1 55860 348 6 tanenbaum andrew s van steen maarten 2002 distributed systems principles and paradigms prentice hall isbn 978 0 13 088893 8 kurki suonio reino 2005 a practical theory of reactive systems springer isbn 978 3 540 23342 8 garg vijay k 2002 elements of distributed computing wiley ieee press isbn 978 0 471 03600 5 magee jeff kramer jeff 2006 concurrency state models and java programming wiley isbn 978 0 470 09355 9 distefano s bruneo d 2015 quantitative assessments of distributed systems methodologies and techniques 1st ed somerset john wiley sons inc isbn 9781119131144 bhattacharyya s s 2013 2014 handbook of signal processing systems second 2 2nd 2013 ed new york ny springer 10 1007 978 1 4614 6859 2 isbn 9781461468592 wolter k 2012 2014 resilience assessment and evaluation of computing systems 1 aufl 1 ed london berlin springer isbn 9783642290329 external links edit process algebra diary prof luca aceto s blog on concurrency theory concurrent systems at the www virtual library concurrency patterns presentation given at scaleconf v t e concurrent computing general concurrency concurrency control concurrent data structures concurrent hash tables concurrent users indeterminacy linearizability process calculi csp ccs acp lotos π calculus ambient calculus api calculus pepa join calculus classic problems aba problem cigarette smokers problem deadlock dining philosophers problem producer consumer problem race condition readers writers problem sleeping barber problem category concurrent computing v t e parallel computing general distributed computing parallel computing parallel algorithm massively parallel cloud computing high performance computing multiprocessing manycore processor gpgpu computer network systolic array levels bit instruction thread task data memory loop pipeline multithreading temporal simultaneous smt simultaneous and heterogenous speculative spmt preemptive cooperative clustered multi thread cmt hardware scout theory pram model pem model analysis of parallel algorithms amdahl s law gustafson s law cost efficiency karp flatt metric slowdown speedup elements process thread fiber instruction window array coordination multiprocessing memory coherence cache coherence cache invalidation barrier synchronization application checkpointing programming stream processing dataflow programming models implicit parallelism explicit parallelism concurrency non blocking algorithm hardware flynn s taxonomy sisd simd array processing simt pipelined processing associative processing misd mimd dataflow architecture pipelined processor superscalar processor vector processor multiprocessor symmetric asymmetric memory shared distributed distributed shared uma numa coma massively parallel computer computer cluster beowulf cluster grid computer hardware acceleration apis ateji px boost chapel hpx charm cilk coarray fortran cuda dryad c amp global arrays gpuopen mpi openmp opencl openhmpp openacc parallel extensions pvm pthreads raftlib rocm upc tbb zpl problems automatic parallelization cache stampede deadlock deterministic algorithm embarrassingly parallel parallel slowdown race condition software lockout scalability starvation category parallel computing retrieved from https en wikipedia org w index php title concurrency_ computer_science oldid 1375542906 category concurrency computer science hidden categories articles with short description short description is different from wikidata noindexed articles articles for deletion cs1 maint miscellaneous url cs1 errors missing periodical articles needing additional references from april 2007 all articles needing additional references articles with specifically marked weasel worded phrases from august 2023 all articles with specifically marked weasel worded phrases all articles needing examples articles needing examples from august 2023 this page was last edited on 18 september 2026 at 12 51 utc page was rendered with parsoid text is available under the creative commons attribution sharealike 4 0 license additional terms may apply by using this site you agree to the terms of use and privacy policy wikipedia is a registere...
|