11 releases

0.3.0 Oct 4, 2019
0.2.3 Oct 3, 2019
0.2.1 Jul 28, 2017
0.2.0 Jan 29, 2017
0.1.5 Jan 28, 2017

#2671 in Algorithms

Download history 238/week @ 2024-09-22 275/week @ 2024-09-29 163/week @ 2024-10-06 210/week @ 2024-10-13 205/week @ 2024-10-20 244/week @ 2024-10-27 353/week @ 2024-11-03 366/week @ 2024-11-10 327/week @ 2024-11-17 105/week @ 2024-11-24 333/week @ 2024-12-01 673/week @ 2024-12-08 1081/week @ 2024-12-15 59/week @ 2024-12-22 166/week @ 2024-12-29 498/week @ 2025-01-05

1,821 downloads per month
Used in 2 crates (via frugalos_config)

MIT license

20KB
341 lines

rendezvous_hash

Documentation Build Status Code Coverage License: MIT

A Rust implementation of Rendezvous (a.k.a, highest random weight) hashing algorithm.

Documentation

References

An Informal Benchmark

$ cat /proc/cpuinfo  | grep 'model name' | head -1
model name      : Intel(R) Core(TM) i7-6600U CPU @ 2.60GHz

$ uname -a
Linux ubuntu 4.8.0-34-generic #36-Ubuntu SMP Wed Dec 21 17:24:18 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

$ cargo run --release --example bench -- /usr/share/dict/words --nodes Rust Alef C++ Camlp4 CommonLisp Erlang Haskell Hermes Limbo Napier Napier88 Newsqueak NIL Sather StandardML

WORD COUNT: 99156
NODE COUNT: 15

SELECTED COUNT PER NODE:
- Napier88:     6711
- Haskell:      6607
- StandardML:   6622
- CommonLisp:   6621
- Newsqueak:    6693
- C++:  6605
- Sather:       6495
- Limbo:        6704
- Camlp4:       6536
- Erlang:       6594
- Napier:       6685
- Rust:         6568
- NIL:  6514
- Hermes:       6667
- Alef:         6534

ELAPSED: 84 ms
WORDS PER SECOND: 1177303

No runtime deps