chronologer icon indicating copy to clipboard operation
chronologer copied to clipboard

Visualize performance benchmarks over git commit history

Visualize changes in program benchmark timings over git commit history.

image

This tool uses https://github.com/sharkdp/hyperfine for the benchmarking.

Getting started

Install via

pip3 install -r requirements.txt
pip3 install .

First example: chronologer tests/chronologer.yaml and then open the produced tests/index.html. For your own project, take tests/chronologer.yaml as a starting point. Some hints: avoid outputs inside the repository you are trying to profile; your to be profiled executable must be statically linked, as they get copied into a separate output directory.

Hints

  • chronologer requires a clean git repository at every commit. One way to do so, without modifying the .gitignore file, is to add the ignore list in .git/info/exclude.