Skip to main content

The STAPL Parallel Graph Library

  • Conference paper
Languages and Compilers for Parallel Computing (LCPC 2012)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7760))


This paper describes the stapl Parallel Graph Library, a high-level framework that abstracts the user from data-distribution and parallelism details and allows them to concentrate on parallel graph algorithm development. It includes a customizable distributed graph container and a collection of commonly used parallel graph algorithms. The library introduces pGraph pViews that separate algorithm design from the container implementation. It supports three graph processing algorithmic paradigms, level-synchronous, asynchronous and coarse-grained, and provides common graph algorithms based on them. Experimental results demonstrate improved scalability in performance and data size over existing graph libraries on more than 16,000 cores and on internet-scale graphs containing over 16 billion vertices and 250 billion edges.

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, by DOE NNSA under the Predictive Science Academic Alliances Program grant DE-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 Abdullah University of Science and Technology (KAUST). This research used resources of the National Energy Research Scientific Computing Center, which is supported by the Office of Science of the U.S. Department of Energy under Contract No. DE-AC02-05CH11231.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save

Springer+ Basic
EUR 32.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 49.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others


  1. The graph 500 list,

  2. Adams, M., Larsen, E.: Fast iterative methods for discrete-ordinates particle transport calculations. Progress in Nuclear Energy 40(1), 3–159 (2002)

    Article  Google Scholar 

  3. Berry, J.W., et al.: Software and algorithms for graph queries on multithreaded architectures. In: Par. and Dist. Proc. Symp., Int., p. 495 (2007)

    Google Scholar 

  4. Buss, A., Fidel, A., Harshvardhan, Smith, T., Tanase, G., Thomas, N., Xu, X., Bianco, M., Amato, N.M., Rauchwerger, L.: The STAPL pView. In: Cooper, K., Mellor-Crummey, J., Sarkar, V. (eds.) LCPC 2010. LNCS, vol. 6548, pp. 261–275. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  5. Buss, A., et al.: STAPL: Standard template adaptive parallel library. In: Proc. Annual Haifa Exp. Sys. Conf, pp. 1–10. ACM, New York (2010)

    Chapter  Google Scholar 

  6. Culler, D., et al.: Par. Comp. Architecture: A Hardware/Software Approach. The Morgan Kaufmann Series in Comp. Arch. and Design (1998)

    Google Scholar 

  7. Gregor, D., Lumsdaine, A.: The parallel BGL: A generic library for distributed graph computations. Par. Object-Oriented Scientific Computing (July 2005)

    Google Scholar 

  8. Malewicz, G., et al.: Pregel: a system for large-scale graph processing. In: Proc. Int. Conf. on Management of Data, pp. 135–146. ACM, New York (2010)

    Google Scholar 

  9. McLendon III, W., et al.: Finding strongly connected components in distributed graphs. J. Par. Dist. Comp. 65(8), 901–910 (2005)

    Article  MATH  Google Scholar 

  10. Musser, D., et al.: STL Tutorial and Ref. Guide, 2nd edn. Addison-Wesley (2001)

    Google Scholar 

  11. Page, L., et al.: The pagerank citation ranking: Bringing order to the web (1998)

    Google Scholar 

  12. Pearce, R., et al.: Multithreaded asynchronous graph traversal for in-memory and semi-external memory. In: Proc. of the ACM/IEEE Int. Conf. for High Performance Computing, Networking, Storage and Analysis, Washington, DC, USA, pp. 1–11 (2010)

    Google Scholar 

  13. Saunders, S., Rauchwerger, L.: ARMI: an adaptive, platform independent communication library. In: Proc. ACM SIGPLAN Symp. Prin. Prac. Par. Prog, pp. 230–241. ACM, San Diego (2003)

    Google Scholar 

  14. Tanase, G., et al.: The STAPL Parallel Container Framework. In: Proc. ACM SIGPLAN Symp. Prin. Prac. Par. Prog., San Antonio, TX, USA, pp. 235–246 (2011)

    Google Scholar 

  15. Thomas, N., et al.: A framework for adaptive algorithm selection in STAPL. In: Proc. ACM SIGPLAN Symp. Prin. Prac. Par. Prog, Chicago, IL, USA, pp. 277–288 (2005)

    Google Scholar 

  16. Thomas, S., et al.: Parallel protein folding with STAPL. Concurrency and Computation: Practice and Experience 17(14), 1643–1656 (2005)

    Article  Google Scholar 

  17. Jacobs, S.A., et al.: A scalable method for parallelizing sampling-based motion planning algorithms. Proc. IEEE Int. Conf. Robot. Autom. (2012)

    Google Scholar 

  18. Quinn, M.J., et al.: Parallel graph algorithms. ACM Comp. Surv., 319–348 (1984)

    Google Scholar 

  19. Hong, S., et al.: Green-marl: a dsl for easy and efficient graph analysis. In: Proc. Int. Conf. Arch. Sup. Prog. Lang. Operat. Sys., pp. 349–362. ACM, New York (2012)

    Google Scholar 

  20. Valiant, L.: Bridging model for parallel computation. Comm. ACM, 103–111 (1990)

    Google Scholar 

  21. Dehne, F., et al.: Efficient Parallel Graph Algorithms for Coarse-Grained Multicomputers and BSP. Algorithmica, 183–200 (2002)

    Google Scholar 

Download references

Author information

Authors and Affiliations


Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Harshvardhan, Fidel, A., Amato, N.M., Rauchwerger, L. (2013). The STAPL Parallel Graph Library. In: Kasahara, H., Kimura, K. (eds) Languages and Compilers for Parallel Computing. LCPC 2012. Lecture Notes in Computer Science, vol 7760. Springer, Berlin, Heidelberg.

Download citation

  • DOI:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-37657-3

  • Online ISBN: 978-3-642-37658-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics