ADT
aaron-thesis
arm-eh
ast-experimental
cleanup-dtors
deferred_resn
demangler
enum
forall-pointer-decay
jacob/cs343-translation
jenkins-sandbox
new-ast
new-ast-unique-expr
new-env
no_list
persistent-indexer
pthread-emulation
qualifiedEnum
resolv-new
with_gc
Last change
on this file since b877fa8 was 7c17511, checked in by Thierry Delisle <tdelisle@…>, 8 years ago |
More work on the basics section
|
-
Property mode
set to
100644
|
File size:
1.2 KB
|
Line | |
---|
1 | % ======================================================================
|
---|
2 | \chapter{Introduction}
|
---|
3 | % ======================================================================
|
---|
4 |
|
---|
5 | This proposal provides a minimal concurrency API that is simple, efficient and can be reused to build higher-level features. The simplest possible concurrency system is a thread and a lock but this low-level approach is hard to master. An easier approach for users is to support higher-level constructs as the basis of the concurrency, in \CFA. Indeed, for highly productive parallel programming, high-level approaches are much more popular~\cite{HPP:Study}. Examples are task based, message passing and implicit threading. Therefore a high-level approach is adapted in \CFA
|
---|
6 |
|
---|
7 | There are actually two problems that need to be solved in the design of concurrency for a programming language: which concurrency and which parallelism tools are available to the users. While these two concepts are often combined, they are in fact distinct concepts that require different tools~\cite{Buhr05a}. Concurrency tools need to handle mutual exclusion and synchronization, while parallelism tools are about performance, cost and resource utilization.
|
---|
Note:
See
TracBrowser
for help on using the repository browser.