Skip to main content

Parallel Construction of Succinct Trees

  • Conference paper
  • First Online:

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

Abstract

Succinct representations of trees are an elegant solution to make large trees fit in main memory while still supporting navigational operations in constant time. However, their construction time remains a bottleneck. We introduce a practical parallel algorithm that improves the state of the art in succinct tree construction. Given a tree on \(n\) nodes stored as a sequence of balanced parentheses, our algorithm builds a succinct tree representation in \(O(n/p+\lg p)\) time, where \(p\) is the number of available cores. The constructed representation uses \(2n + o(n)\) bits of space and supports a rich set of operations in \(O(\lg n)\) time. In experiments using up to 64 cores and on inputs of different sizes, our algorithm achieved good parallel speed-up. We also present an algorithm that takes \(O(n/p + \lg p)\) time to construct the balanced parenthesis representation of the input tree required by our succinct tree construction algorithm.

This work was supported by the Emerging Leaders in the Americas scholarship programme, NSERC, and the Canada Research Chairs programme.

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Arroyuelo, D., Cánovas, R., Navarro, G., Sadakane, K.: Succinct trees in practice. In: ALENEX, pp. 84–97. SIAM Press, Austin (2010)

    Google Scholar 

  2. Benoit, D., Demaine, E.D., Munro, J.I., Raman, V.: Representing trees of higher degree. In: Dehne, F., Gupta, A., Sack, J.-R., Tamassia, R. (eds.) WADS 1999. LNCS, vol. 1663, pp. 169–180. Springer, Heidelberg (1999)

    Chapter  Google Scholar 

  3. Bingmann, T.: malloc\_count - tools for runtime memory usage analysis and profiling, January 17, 2015

    Google Scholar 

  4. Blumofe, R.D., Leiserson, C.E.: Scheduling multithreaded computations by work stealing. J. ACM 46(5), 720–748 (1999)

    Article  MATH  MathSciNet  Google Scholar 

  5. Clark, D.R., Munro, J.I.: Efficient suffix trees on secondary storage. In: SODA, pp. 383–391 (1996)

    Google Scholar 

  6. Claude, F.: A compressed data structure library, January 17, 2015

    Google Scholar 

  7. Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithms, chapter. Multithreaded Algorithms, third edn., pp. 772–812. The MIT Press (2009)

    Google Scholar 

  8. Drepper, U.: What every programmer should know about memory (2007)

    Google Scholar 

  9. Farzan, A., Munro, J.I.: A uniform paradigm to succinctly encode various families of trees. Algorithmica 68(1), 16–40 (2014)

    Article  MATH  MathSciNet  Google Scholar 

  10. Fuentes-Sepúlveda, J., Elejalde, E., Ferres, L., Seco, D.: Efficient Wavelet tree construction and querying for multicore architectures. In: Gudmundsson, J., Katajainen, J. (eds.) SEA 2014. LNCS, vol. 8504, pp. 150–161. Springer, Heidelberg (2014)

    Google Scholar 

  11. Geary, R.F., Raman, R., Raman, V.: Succinct ordinal trees with level-ancestor queries. In: SODA, pp. 1–10 (2004)

    Google Scholar 

  12. Gog, S.: Succinct data structure library 2.0, January 17, 2015

    Google Scholar 

  13. He, M., Munro, J.I., Satti, S.R.: Succinct ordinal trees based on tree covering. ACM Trans. Algorithms 8(4), 42 (2012)

    Article  MathSciNet  Google Scholar 

  14. Helman, D.R., JáJá, J.: Prefix computations on symmetric multiprocessors. J. Par. Dist. Comput. 61(2), 265–278 (2001)

    Article  MATH  Google Scholar 

  15. Jacobson, G.: Space-efficient static trees and graphs. In: FOCS, pp. 549–554 (1989)

    Google Scholar 

  16. Jansson, J., Sadakane, K., Sung, W.K.: Ultra-succinct representation of ordered trees. In: SODA (2007)

    Google Scholar 

  17. Lu, H.I., Yeh, C.C.: Balanced parentheses strike back. ACM Trans. Algorithms 4, 28:1–28:13 (2008)

    Article  MathSciNet  Google Scholar 

  18. Munro, J.I., Raman, V.: Succinct representation of balanced parentheses, static trees and planar graphs. In: FOCS, pp. 118–126 (1997)

    Google Scholar 

  19. Navarro, G., Sadakane, K.: Fully functional static and dynamic succinct trees. ACM Trans. Algorithms 10(3), 16:1–16:39 (2014)

    Article  MathSciNet  Google Scholar 

  20. Raman, R., Rao, S.S.: Succinct representations of ordinal trees. In: Brodnik, A., López-Ortiz, A., Raman, V., Viola, A. (eds.) Ianfest-66. LNCS, vol. 8066, pp. 319–332. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  21. Shun, J.: Parallel wavelet tree construction. CoRR abs/1407.8142 (2014)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to José Fuentes-Sepúlveda .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Ferres, L., Fuentes-Sepúlveda, J., He, M., Zeh, N. (2015). Parallel Construction of Succinct Trees. In: Bampis, E. (eds) Experimental Algorithms. SEA 2015. Lecture Notes in Computer Science(), vol 9125. Springer, Cham. https://doi.org/10.1007/978-3-319-20086-6_1

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-20086-6_1

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-20085-9

  • Online ISBN: 978-3-319-20086-6

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics