Standard Templates Adaptive Parallel Library (STAPL)

  • Lawrence Rauchwerger
  • Francisco Arzu
  • Koji Ouchi
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 1511)


STAPL (Standard Adaptive Parallel Library) is a parallel C++ library designed as a superset of the STL, sequentially consistent for functions with the same name, and executes on uni- or multiprocessors. STAPL is implemented using simple parallel extensions of C++ which provide a SPMD model of parallelism supporting recursive parallelism. The library is intended to be of generic use but emphasizes irregular, non-numeric programs to allow the exploitation of parallelism in areas such as geometric modeling or graph algorithms which use dynamic linked data structures. Each library routine has several dicfferent algorithmic options, and the choice among them will be made adaptively based on a performance model, statistical feedback, and current run-time conditions. Builtc-in performance monitors can measure actual performance and, using an extension of the BSP model predict the relative performance of the algorithmic choices for each library routine. STAPL is intended to possibly replace STL in a user transparent manner and run on small to medium scale shared memory multiprocessors which support OpenMP.


Parallel Algorithm Random Access Performance Monitoring Performance Monitor Algorithmic Option 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    N. M. Amato, A. Pietracaprina, G. Pucci, L. K. Dale and J. Perdue, “A Cost Model for Communication on a Symmetric Multiprocessor„, TR 98004, Dept. of Computer Science, Texas A&M University, January, 1998.Google Scholar
  2. 2.
    G.E. Blelloch, “NESL: A nested data-parallel language,„ Technical Report CMU-CS-92-103, School of Computer Science, Carnegie Mellon University, April 1993.Google Scholar
  3. 3.
    G.E. Blelloch, Vector Models for Data-Parallel Computing, MIT Press, 1990.Google Scholar
  4. 4.
    E. Johnson and D. Gannon, HPC++: Experiments with the Parallel Standard Library, In Proc. of the 1997 Int. Conf. on Supercomputing, 1997, pp. 124–131.Google Scholar
  5. 5.
    D. Musser and A. Saini, STL Tutorial and Reference Guide, Addison-Wesley, 1996.Google Scholar
  6. 6.
    R. Sedgewick, Algorithms in C++, Addison-Wesley, 1992.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1998

Authors and Affiliations

  • Lawrence Rauchwerger
    • 1
  • Francisco Arzu
    • 1
  • Koji Ouchi
    • 1
  1. 1.Dept. of Computer ScienceTexas A&M UniversityCollege Station

Personalised recommendations