Abstract
We extend state-of-the-art lock-free linked lists by building linked lists with special care for locality of traversals. These linked lists are built of sequences of entries that reside on consecutive chunks of memory. When traversing such lists, subsequent entries typically reside on the same chunk and are thus close to each other, e.g., in same cache line or on the same virtual memory page. Such cache-conscious implementations of linked lists are frequently used in practice, but making them lock-free requires care. The basic component of this construction is a chunk of entries in the list that maintains a minimum and a maximum number of entries. This basic chunk component is an interesting tool on its own and may be used to build other lock-free data structures as well.
Supported by THE ISRAEL SCIENCE FOUNDATION (grant No. 845/06).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Unrolled Linked Lists, http://blogs.msdn.com/devdev/archive/2005/08/22/454887.aspx
Full Version of Locality-Conscious Lock-Free Linked Lists, http://www.cs.technion.ac.il/~erez/Papers/lf-linked-list-full.pdf
Fomitchev, M., Rupert, E.: Lock-free linked lists and skip lists. In: Proc. PODC (2004)
Fraser, K.: Practical lock-freedom, Technical Report UCAM-CL-TR-579, University of Cambridge, Computer Laboratory (February 2004)
Frias, L., Petit, J., Roura, S.: Lists revisited: Cache-conscious STL lists. J. Exp. Algorithmics 14, 3.5–3.27 (2009)
Harris, T.L.: A pragmatic implementation of non-blocking linked-lists. In: Proc. PODC (2001)
Herlihy, M.: Wait-free synchronization. TOPLAS (1991)
Michael, M.M.: High Performance Dynamic Lock-Free Hash Tables and List-Based Sets. In: Proc. SPAA (2002)
Michael, M.M.: Safe memory reclamation for dynamic lock-free objects using atomic reads and writes. In: Proc. PODC (2002)
Michael, M.M.: Hazard pointers: Safe memory reclamation for lock-free objects. TPDS (June 2004)
Herlihy, M., Shavit, N.: The art of multiprocessor programming. Morgan Kaufmann, San Francisco (2008)
Valois, J.D.: Lock-free linked lists using compare-and-swap. In: Proc. PODC (1995)
Treiber, R.K.: Systems programming: Coping with parallelism, Research report RJ 5118, IBM Almaden Research Center (1986)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Braginsky, A., Petrank, E. (2011). Locality-Conscious Lock-Free Linked Lists. In: Aguilera, M.K., Yu, H., Vaidya, N.H., Srinivasan, V., Choudhury, R.R. (eds) Distributed Computing and Networking. ICDCN 2011. Lecture Notes in Computer Science, vol 6522. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-17679-1_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-17679-1_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-17678-4
Online ISBN: 978-3-642-17679-1
eBook Packages: Computer ScienceComputer Science (R0)