Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A benchmark of some prominent C/C++ hash table implementations
Python C C++
branch: master
Failed to load latest commit information.
src added ruby hash!
.gitignore ignore charts.html
Makefile added ruby hash!
README added no-copyright notice bugfix/tweak
charts-template.html added ruby hash! capitalization fix revamped how you run it


How to run these benchmarks:

First, some prerequisites are:

* make
* gcc and recent g++ (4.3-ish?)
* python (hard-coded for 2.6 -- edit Makefile to use another version)
* glib
* boost
* google sparsehash
* qt

Now, run:

$ make
$ python
$ python < output | python

Your charts are now in charts.html.

You can tweak some of the values in to make it run faster at the
expense of less granular data, and you might need to tweak some of the tickSize
settings in charts-template.html.

To run the benchmark at the highest priority possible, do this:

    $ sudo nice -n-20 ionice -c1 -n0 sudo -u $USER python

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.
No copyright.  This work is dedicated to the public domain.
For full details, see
Something went wrong with that request. Please try again.