2010
DOI: 10.1155/2010/521797
|View full text |Cite
|
Sign up to set email alerts
|

Concurrent Collections

Abstract: We introduce the Concurrent Collections (CnC) programming model. CnC supports flexible combinations of task and data parallelism while retaining determinism. CnC is implicitly parallel, with the user providing high-level operations along with semantic ordering constraints that together form a CnC graph. We formally describe the execution semantics of CnC and prove that the model guarantees deterministic computation. We evaluate the performance of CnC implementations on several applications and show that CnC of… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
2
1

Citation Types

0
87
0

Year Published

2011
2011
2017
2017

Publication Types

Select...
6
2
1

Relationship

3
6

Authors

Journals

citations
Cited by 106 publications
(87 citation statements)
references
References 10 publications
0
87
0
Order By: Relevance
“…The Concurrent Collections (CnC) family of languages [3] is a coordination language which is very much inspired by dynamic dataflow. CnC utilizes a separation of concerns, providing a tuning specification to achieve performance.…”
Section: Related Workmentioning
confidence: 99%
“…The Concurrent Collections (CnC) family of languages [3] is a coordination language which is very much inspired by dynamic dataflow. CnC utilizes a separation of concerns, providing a tuning specification to achieve performance.…”
Section: Related Workmentioning
confidence: 99%
“…The Concurrent Collections(CnC) programming model [8] on which Streaming Concurrent Collection is a prerequisite to understanding the paper and is described in short in this section. CnC has three main building blocks: item collections, control collections and step collections.…”
Section: Cnc Terminologymentioning
confidence: 99%
“…Single-assignment variables have been generalized to I-Structures [1] which are essentially single-assignment arrays. CnC [4,2] is a parallel programming model influenced by dynamic dataflow, stream-processing and tuple spaces [8]. In CnC the user provides high-level operations along with the ordering constraints that form a computation dependency graph.…”
Section: Related Workmentioning
confidence: 99%
“…Programming models based on dataflow [1,2] have the potential to simplify parallel programming, since the resulting programs are deterministic. Moreover, dataflow programs can be expressed more declaratively than programs based on mainstream concurrency constructs, such as shared-memory threads and locks, as programmers are only required to specify data and control dependencies.…”
Section: Introductionmentioning
confidence: 99%