Associative Parallel Containers in STAPL
Associative Parallel Containers in STAPL
复制标题
STAPL 中的关联并行容器
DOI:
--
复制
发表时间:
2007
期刊:
影响因子:
--
通讯作者:
Lawrence Rauchwerger
中科院分区:
文献类型:
--
作者:
Ilie Gabriel Tanase;C. Raman;Mauro Bianco;N. Amato;Lawrence Rauchwerger
The Standard Template Adaptive Parallel Library ( stapl ) is a parallel programming framework that extends C++ and stl with support for parallelism. stapl provides a collection of parallel data structures ( pContainers ) and algorithms ( pAlgorithms ) and a generic methodology for extending them to provide customized functionality. stapl pContainers are thread-safe, concurrent objects, i.e., shared objects that provide parallel methods that can be invoked concurrently. They also provide appropriate interfaces that can be used by generic pAlgorithms . In this work, we present the design and implementation of the stapl associative pContainers : pMap , pSet , pMultiMap , pMultiSet , pHashMap , and pHashSet . These containers provide optimal insert, search, and delete operations for a distributed collection of elements based on keys. Their methods include counterparts of the methods provided by the stl associative containers, and also some asynchronous (non-blocking) variants that can provide improved performance in parallel. We evaluate the performance of the stapl associative pContainers on an IBM Power5 cluster, an IBM Power3 cluster, and on a linux-based Opteron cluster, and show that the new pContainer asynchronous methods, generic pAlgorithms (e.g., pfind ) and a sort application based on associative pContainers , all provide good scalability on more than 103processors.