forked from mackstann/hash-table-shootout
A benchmark of some prominent hash table implementations
hpjansson/hash-table-rehash
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Introduction ============ You can read more about these benchmarks and how they were used at: https://hpjansson.org/blag/2018/07/24/a-hash-table-re-hash/ and https://hpjansson.org/blag/2018/08/29/what-ails-ghashtable/ How to run these benchmarks =========================== First, some prerequisites are: * make * gcc and recent g++ (4.3-ish?) * python (versions 2 and 3) * glib * boost * google sparsehash * qt * gnuplot * rustc Now, run: $ make $ ./bench.sh $ ./plot.sh Your tables and charts are now in results/. You can tweak some of the values in bench.sh to make it run faster at the expense of less granular data. To run the benchmark at the highest priority possible, do this: $ sudo nice -n-20 ionice -c1 -n0 sudo -u $USER ./bench.sh You might also want to disable any swap files/partitions so that swapping doesn't influence performance. (The programs will just die if they try to allocate too much memory.) Copyright Information ===================== Written by Nick Welch in 2010. Modified by Hans Petter Jansson in 2018. No copyright. This work is dedicated to the public domain. For full details, see http://creativecommons.org/publicdomain/zero/1.0/ The included khash implementation in src/khash-impl.h is copyright (c) by Attractive Chaos <attractor@live.co.uk> and released under the MIT license. See that file for more information.
About
A benchmark of some prominent hash table implementations
Topics
Resources
Stars
Watchers
Forks
Languages
- C 75.0%
- Gnuplot 10.1%
- C++ 6.0%
- Makefile 4.2%
- Rust 2.6%
- Shell 2.1%