TY - CHAP
T1 - The STAPL pView
AU - Buss, Antal
AU - Fidel, Adam
AU - Harshvardhan,
AU - Smith, Timmie
AU - Tanase, Gabriel
AU - Thomas, Nathan
AU - Xu, Xiabing
AU - Bianco, Mauro
AU - Amato, Nancy M.
AU - Rauchwerger, Lawrence
N1 - KAUST Repository Item: Exported on 2020-10-01
Acknowledged KAUST grant number(s): KUS-C1-016-04
Acknowledgements: This research supported in part by NSF awards CRI-0551685, CCF-0833199, CCF-0830753, IIS-096053, IIS-0917266, NSF/DNDO award 2008-DN-077-ARI018-02, bythe DOE NNSA under the Predictive Science Academic Alliances Program by grantDE-FC52-08NA28616, by THECB NHARP award 000512-0097-2009, by Chevron,IBM, Intel, Oracle/Sun and by Award KUS-C1-016-04, made by King AbdullahUniversity of Science and Technology (KAUST). This research used resources of theNational Energy Research Scientific Computing Center, which is supported by theOffice of Science of the U.S. Department of Energy under Contract No. DE-AC02-05CH11231. Tanase is now a Research Staff Member at IBM T.J. Watson ResearchCenter. Bianco is now a scientist at the Swiss National Supercomputing Centre.
This publication acknowledges KAUST support, but has no KAUST affiliated authors.
PY - 2011
Y1 - 2011
N2 - The Standard Template Adaptive Parallel Library (STAPL) is a C++ parallel programming library that provides a collection of distributed data structures (pContainers) and parallel algorithms (pAlgorithms) and a generic methodology for extending them to provide customized functionality. STAPL algorithms are written in terms of pViews, which provide a generic access interface to pContainer data by abstracting common data structure concepts. Briefly, pViews allow the same pContainer to present multiple interfaces, e.g., enabling the same pMatrix to be 'viewed' (or used) as a row-major or column-major matrix, or even as a vector. In this paper, we describe the stapl pView concept and its properties. pViews generalize the iterator concept and enable parallelism by providing random access to, and an ADT for, collections of elements. We illustrate how pViews provide support for managing the tradeoff between expressivity and performance and examine the performance overhead incurred when using pViews. © 2011 Springer-Verlag Berlin Heidelberg.
AB - The Standard Template Adaptive Parallel Library (STAPL) is a C++ parallel programming library that provides a collection of distributed data structures (pContainers) and parallel algorithms (pAlgorithms) and a generic methodology for extending them to provide customized functionality. STAPL algorithms are written in terms of pViews, which provide a generic access interface to pContainer data by abstracting common data structure concepts. Briefly, pViews allow the same pContainer to present multiple interfaces, e.g., enabling the same pMatrix to be 'viewed' (or used) as a row-major or column-major matrix, or even as a vector. In this paper, we describe the stapl pView concept and its properties. pViews generalize the iterator concept and enable parallelism by providing random access to, and an ADT for, collections of elements. We illustrate how pViews provide support for managing the tradeoff between expressivity and performance and examine the performance overhead incurred when using pViews. © 2011 Springer-Verlag Berlin Heidelberg.
UR - http://hdl.handle.net/10754/599965
UR - http://link.springer.com/10.1007/978-3-642-19595-2_18
UR - http://www.scopus.com/inward/record.url?scp=79952586389&partnerID=8YFLogxK
U2 - 10.1007/978-3-642-19595-2_18
DO - 10.1007/978-3-642-19595-2_18
M3 - Chapter
SN - 9783642195945
SP - 261
EP - 275
BT - Languages and Compilers for Parallel Computing
PB - Springer Nature
ER -