Skip to content
Snippets Groups Projects
Commit 674c7fab authored by Marek Vavrusa's avatar Marek Vavrusa
Browse files

Hopscotch hashing for resolving collisions in RRL.

The idea is to insert colliding items in the H distance of
the original hash value. H must be chosen to accomodate log(N)
items, we use sizeof(unsigned). Unlike in linear probing,
lookup is always in constant time and doesn't require
extra memory and chaining costs as in external chaining.
Extra memory is just sizeof(unsigned) per bucket.
Builtin __builtin_ctz() is used for fast hop lookup.

Herlihy, Maurice and Shavit, Nir and Tzafrir, Moran (2008).
"Hopscotch Hashing". DISC '08: Proceedings of the 22nd
international symposium on Distributed Computing.
Arcachon, France: Springer-Verlag. pp. 350--364.
http://people.csail.mit.edu/shanir/publications/disc2008_submission_98.pdf
parent ec0dc0fb
No related branches found
No related tags found
No related merge requests found
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment