-
-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Concurrent HashMap #2
Comments
Concurrent HashMaps are hard, harder and hardest. 1.How to calculate original slots count (capacity) from capacity+1/4buffer. Say the count is 32+8==40, 0b101000 2.How to put an item into map during resizing without loss:
|
3.Double expand size is simple.: Given 32+8==40, do 40 << 1 == 64+16 == 80 |
Not now |
Update
Here is the existing implementation to copy and adapt Ariadne
Test and verify via RelaSharp.
Update 2
Here is the Fibonacci Hashing reveal to fit hash into smaller space, instead of current modulo approach:
https://probablydance.com/2018/06/16/fibonacci-hashing-the-optimization-that-the-world-forgot-or-a-better-alternative-to-integer-modulo/
The text was updated successfully, but these errors were encountered: