Skip to main content

Range Queries in Non-blocking k-ary Search Trees

  • Conference paper
Principles of Distributed Systems (OPODIS 2012)

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

Included in the following conference series:

Abstract

We present a linearizable, non-blocking k-ary search tree (k-ST) that supports fast searches and range queries. Our algorithm uses single-word compare-and-swap (CAS) operations, and tolerates any number of crash failures. Performance experiments show that, for workloads containing small range queries, our k-ST significantly outperforms other algorithms which support these operations, and rivals the performance of a leading concurrent skip-list, which provides range queries that cannot always be linearized.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Similar content being viewed by others

References

  1. Afek, Y., Attiya, H., Dolev, D., Gafni, E., Merritt, M., Shavit, N.: Atomic snapshots of shared memory. J. ACM 40(4), 873–890 (1993)

    Article  MATH  Google Scholar 

  2. Afek, Y., Avni, H., Shavit, N.: Towards Consistency Oblivious Programming. In: Fernàndez Anta, A., Lipari, G., Roy, M. (eds.) OPODIS 2011. LNCS, vol. 7109, pp. 65–79. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  3. Attiya, H., Guerraoui, R., Ruppert, E.: Partial snapshot objects. In: Proc. 20th Annual Symposium on Parallelism in Algorithms and Architectures, SPAA 2008, pp. 336–343. ACM, New York (2008)

    Chapter  Google Scholar 

  4. Barnes, G.: A method for implementing lock-free data structures. In: Proc. 5th ACM Symposium on Parallel Algorithms and Architectures, pp. 261–270 (1993)

    Google Scholar 

  5. Braginsky, A., Petrank, E.: A lock-free b+tree. In: Proceedings of the 24th ACM Symposium on Parallelism in Algorithms and Architectures, SPAA 2012, pp. 58–67. ACM, New York (2012)

    Chapter  Google Scholar 

  6. Bronson, N.G., Casper, J., Chafi, H., Olukotun, K.: A practical concurrent binary search tree. In: Proc. 15th ACM Symposium on Principles and Practice of Parallel Programming, pp. 257–268 (2010)

    Google Scholar 

  7. Bronson, N.G., Casper, J., Chafi, H., Olukotun, K.: Transactional predication: high-performance concurrent sets and maps for stm. In: PODC, pp. 6–15 (2010)

    Google Scholar 

  8. Brown, T., Avni, H.: Range queries in non-blocking k-ary search trees, http://www.cs.toronto.edu/~tabrown/kstrq

  9. Brown, T., Helga, J.: Non-blocking k-ary search trees. In: Proc. 15th International Conference on Principles of Distributed Systems, pp. 207–211 (2011), Complete proof and code available at http://www.cs.toronto.edu/~tabrown/ksts , more details in Tech. Report CSE-2011-04, York University

  10. Ellen, F., Fatourou, P., Ruppert, E., van Breugel, F.: Non-blocking binary search trees. In: Proc. 29th ACM Symposium on Principles of Distributed Computing, pp. 131–140 (2010), Full version in Tech. Report CSE-2010-04, York University

    Google Scholar 

  11. Okasaki, C.: Purely functional data structures. Cambridge University Press, New York (1998)

    Book  Google Scholar 

  12. Prokopec, A., Bronson, N.G., Bagwell, P., Odersky, M.: Concurrent tries with efficient non-blocking snapshots. To appear in Proc. 17th ACM Symposium on Principles and Practice of Parallel Programming (2012)

    Google Scholar 

  13. Shavit, N., Touitou, D.: Software transactional memory. In: Proceedings of the Fourteenth Annual ACM Symposium on Principles of Distributed Computing, PODC 1995, pp. 204–213. ACM, New York (1995)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Brown, T., Avni, H. (2012). Range Queries in Non-blocking k-ary Search Trees. In: Baldoni, R., Flocchini, P., Binoy, R. (eds) Principles of Distributed Systems. OPODIS 2012. Lecture Notes in Computer Science, vol 7702. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-35476-2_3

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-35476-2_3

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-35475-5

  • Online ISBN: 978-3-642-35476-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics