Repository logo

Infoscience

  • English
  • French
Log In
Logo EPFL, École polytechnique fédérale de Lausanne

Infoscience

  • English
  • French
Log In
  1. Home
  2. Academic and Research Output
  3. Reports, Documentation, and Standards
  4. On A Generic Parallel Collection Framework
 
report

On A Generic Parallel Collection Framework

Prokopec, Aleksandar  
•
Rompf, Tiark  
•
Bagwell, Phil
Show more
2011

As the number of cores increases in modern multiprocessors, it is becoming increasingly difficult to write general purpose applications that efficiently utilize this computing power. Most applications manipulate structured data. Modern languages and platforms provide collection frameworks with basic data structures like lists, hashtables and trees. These data structures have a range of predefined operations which include mapping, filtering or finding elements. Such bulk operations traverse the collection and process the elements sequentially. Their implementation 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, 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.

  • Files
  • Details
  • Metrics
Type
report
Author(s)
Prokopec, Aleksandar  
Rompf, Tiark  
Bagwell, Phil
Odersky, Martin  
Date Issued

2011

Total of pages

26

Subjects

parallel collections

•

multicore

•

java

•

parallel hash tables

Written at

EPFL

EPFL units
LAMP1  
Available on Infoscience
May 3, 2011
Use this identifier to reference this record
https://infoscience.epfl.ch/handle/20.500.14299/66997
Logo EPFL, École polytechnique fédérale de Lausanne
  • Contact
  • infoscience@epfl.ch

  • Follow us on Facebook
  • Follow us on Instagram
  • Follow us on LinkedIn
  • Follow us on X
  • Follow us on Youtube
AccessibilityLegal noticePrivacy policyCookie settingsEnd User AgreementGet helpFeedback

Infoscience is a service managed and provided by the Library and IT Services of EPFL. © EPFL, tous droits réservés