Range Partition Adaptors: A Mechanism for Parallelizing STL Matthew H. Austern Ross A. Towle Alexander A. Stepanov Silicon Graphics, Inc., Mountain View, CA 94043 Abstract Range partition adaptors, a new type of adaptor for the C++ Standard Template Library (STL), can be the basis for a parallel version of the STL. 1 Introduction * operator to obtain the value it refers to, it can be incremented to obtain the iterator that refers to the following element, and so on. Consider, for example, the following function. template <class InputIterater, class Functien) FunctLon fer_each(Inputlterator f i r s t , Input/aerator l a s t , vhile (first retux~ f ; Function f) { !ffi l a s t ) ~ ( * f i r s t + ÷ ) ; The Standard Template Library, or STL [1, 2], is a large body of software components written in C++ [3]. It provides many of the basic algorithms and data structures of computer science, and has been accepted as part of the ANSI/ISO C++ standard. The STL is a gener/c library [4]: its components are heavily parameterized. Its components are designed so that they may be combined together so long
/lp/association-for-computing-machinery/range-partition-adaptors-a-mechanism-for-parallelizing-stl-SAf6XQCudE