000150220 001__ 150220
000150220 005__ 20190316234830.0
000150220 037__ $$aREP_WORK
000150220 245__ $$aA Generic Parallel Collection Framework
000150220 269__ $$a2010
000150220 260__ $$c2010
000150220 300__ $$a10
000150220 336__ $$aReports
000150220 520__ $$aMost applications manipulate structured data. Modern languages and platforms provide collection frameworks with basic data structures like lists, hashtables and trees. These data structures come with a range of predefined operations which include sorting, filtering or finding elements. Such bulk operations usually traverse the entire collection and process the elements sequentially. Their implementation often relies on iterators, which are not applicable to parallel operations due to their sequential nature. We present an approach to parallelizing collection operations in a generic way, which can be used to factor out common parallel operations in collection libraries. Our framework is easy to use and straightforward to extend to new collections. We show how to implement concrete parallel collections such as parallel arrays and parallel hash maps, proposing an efficient solution to parallel hash map construction. Finally, we give benchmarks showing the performance of parallel collection operations.
000150220 6531_ $$aparallel collections
000150220 6531_ $$aparallel data structures
000150220 6531_ $$aScala
000150220 700__ $$0244134$$g191413$$aProkopec, Aleksandar
000150220 700__ $$0243345$$g185682$$aRompf, Tiark
000150220 700__ $$aBagwell, Philip
000150220 700__ $$aOdersky, Martin$$g126003$$0241835
000150220 8564_ $$uhttps://infoscience.epfl.ch/record/150220/files/pc.pdf$$zn/a$$s229833$$yn/a
000150220 909C0 $$xU10409$$0252187$$pLAMP
000150220 909CO $$ooai:infoscience.tind.io:150220$$qGLOBAL_SET$$pIC$$preport
000150220 917Z8 $$x191413
000150220 937__ $$aEPFL-REPORT-150220
000150220 973__ $$sPUBLISHED$$aEPFL
000150220 980__ $$aREPORT