Concurrent Collections
From HandWiki
Short description: Programming model for software frameworks
Concurrent Collections (known as CnC) is a programming model for software frameworks to expose parallelism in applications. The Concurrent Collections conception originated from tagged stream processing development with HP TStreams.
TStreams
Around 2003, Hewlett-Packard Cambridge Research Lab developed TStreams, a stream processing forerunner of the basic concepts of CnC.[1][2][3]
Concurrent Collections for C++
Concurrent Collections for C++ is an open source C++ template library developed by Intel for implementing parallel CnC applications in C++ with shared and/or distributed memory.
Habanero CnC
Rice University has developed various CnC language implementations based on their Habanero project infrastructure.
See also
- Stream processing
- Flow-based programming (FBP)
- Tuple space
- Functional reactive programming (FRP)
- Linda (coordination language)
- Threading Building Blocks (TBB)
- Cilk/Cilk Plus
- Intel Parallel Studio
Notes
References
- Budimlic, Z.; Chandramowlishwaran, A. M.; Knobe, K.; Lowney, G. N.; Sarkar, V.; Treggiari, L. (2008). "Declarative aspects of memory management in the concurrent collections parallel programming model". DAMP '09. pp. 47–58. doi:10.1145/1481839.1481846. ISBN 978-1-60558-417-1. http://courses.cs.vt.edu/cs5204/fall11-kafura/Papers/CnC/Declarative-Aspects-Memory-Management.pdf.
- Budimlić, Z.; Burke, M.; Cavé1, V.; Knobe, K.; Lowney, G.; Newton, R.; Palsberg, J.; Peixotto1, D. et al. (2010). "Concurrent Collections". Scientific Programming 18 (3–4): 203–217. doi:10.1155/2010/521797. http://www.cs.rice.edu/~vs3/PDF/CNC_JSC10.pdf. Retrieved 2013-08-25.
- Chandramowlishwaran, A.; Knobe, K.; Vuduc, R. (2010). "Applying the concurrent collections programming model to asynchronous parallel dense linear algebra". PPoPP '10. pp. 345–346. doi:10.1145/1693453.1693506. ISBN 978-1-60558-708-0. http://hpcgarage.org/wp/chandramowlishwaran2010-cnc-poster.pdf.
- Chandramowlishwaran, A.; Knobe, K.; Vuduc, R. (2010). "2010 IEEE International Symposium on Parallel & Distributed Processing (IPDPS)". IPDPS 2010. pp. 1–12. doi:10.1109/IPDPS.2010.5470404. ISBN 978-1-4244-6442-5. http://vuduc.org/pubs/chandramowlishwaran2010-ipdps-cnc.pdf.
- Burke, M. G.; Knobe, K.; Newton, R.; Sarkar, V. (2011). "Concurrent Collections Programming Model". Encyclopedia of Parallel Computing. 4. Springer. pp. 364–371. doi:10.1007/978-0-387-09766-4_238. ISBN 978-0-387-09765-7. https://wiki.rice.edu/confluence/download/attachments/4425835/cnc_encyc.pdf. Retrieved 2013-08-25.
- Tang, P. (25 December 2012). "Measuring the overhead of Intel C++ Concurrent Collections over Threading Building Blocks for Gauss–Jordan elimination". Concurrency and Computation: Practice and Experience 24 (18): 2282–2301. doi:10.1002/cpe.2811. http://www.ualr.edu/pxtang/papers/ccpe12-journal.pdf.
External links
- Intel Concurrent Collections for C++ for Windows and Linux at Intel DZ, a "What If" project
- CNC - Habanero Concurrent Collections as part of the Rice University Habanero project
Original source: https://en.wikipedia.org/wiki/Concurrent Collections.
Read more |