A benchmark for cache efficient data structures.
Full writeup (explaining the data structures being examined, as well as a discussion of the results) can be found on my blog.
scripts contains a Python script that can automate the entire process of building, running, and graphing the output. To use it, you'll need to (once) set up a Python virtual environment like so:
$ cd <path to repo>/scripts$ virtualenv env -p python3$ env/bin/pip3 install -r package_requirements.txt
Then, run the script via:
$ env/bin/python3 benchmark_and_graph.py
After the program churns for a few minutes, you'll get a new graphs directory full of PNGs.
$ cmake CMakeLists.txt$ make./data_structure_benchmarks > my_output_file.txt- Set up a Python virtual environment in your
scriptsdirectory as above $ cd scripts$ env/bin/python3 graph_results.py --file my_output_file.txt [--min-elements=N] [--max-elements=M]