• Zoran Budimlic Michael Burke, Vincent Cave, Kathleen Knobe, Geoff Lowney, Ryan Newton, Jens Palsberg, David Peixotto, Vivek Sarkar, Frank Schlimbach, Sagnak Tasirlar
  • Journal of Scientific Programming
  • 2010-08-01
  • pdf
  • bibtex


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 offers performance and scalability equivalent to or better than that offered by lower-level parallel programming models.


@article{Budimlic:2010:CC:1938482.1938486, Acmid = {1938486}, Address = {Amsterdam, The Netherlands, The Netherlands}, Author = {Budimlic, Zoran and Burke, Michael and Cave, Vincent and Knobe, Kathleen and Lowney, Geoff and Newton, Ryan and Palsberg, Jens and Peixotto, David and Sarkar, Vivek and Schlimbach, Frank and Ta\c{s}\irlar, Sa\u{g}nak}, Issn = {1058-9244}, Issue = {3-4}, Issue_Date = {August 2010}, Journal = {Sci. Program.}, Keywords = {Concurrent Collections (CnC), parallel programming, programming model}, Numpages = {15}, Pages = {203--217}, Publisher = {IOS Press}, Title = {Concurrent Collections}, Url = {http://portal.acm.org/citation.cfm?id=1938482.1938486}, Volume = {18}, Year = {2010}}