ashvardanian / HashTableBenchmark

A simple cross-platform speed & memory-efficiency benchmark for the most common hash-table implementations in the C++ world

Home Page:https://unum.cloud/post/2021-12-21-macbook/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Hash-Tables Benchmarks

This repository contains a bunch of extendable benchmarks mostly for following containers:

The keys and values are generally set to 64-bit integers to mimic most workloads. Keys are generated with the uniform ditribution. The hash function is set to std::hash.

Build

Running bash -i build.sh will build following executables:

  • ./build/build/bin/mixed_ops - speed test comparing insertions, removals and lookups across containers.
  • ./build/build/bin/ram_usage - a benchmark analyzing the space overhead of each container, which shouldn't be called directly, only through python ram_usage_bench.py.
  • ./build/build/bin/ram_speed - a memory-bandwidth utilization benchmark.

About

A simple cross-platform speed & memory-efficiency benchmark for the most common hash-table implementations in the C++ world

https://unum.cloud/post/2021-12-21-macbook/

License:MIT License


Languages

Language:C++ 83.0%Language:Jupyter Notebook 15.4%Language:CMake 0.9%Language:Python 0.5%Language:C 0.2%Language:Shell 0.0%