Automated code benchmark solution.
Empower developers with tools to trace and analyze project performances.
Codebench is a tool that runs user-defined benchmark programs, monitors system information and generates reports. It is most powerful when using in a project tracked by git. It runs benchmarks based on different commits and reports the system usage difference, so that users can compare and track performance changes of their project across commits. It can also be used in CI (Continuous Integration) to detect recent commits that increases/decreases project performance.
Codebench itself does not provide benchmark programs. It is not smart enough to generate a benchmark program for your code. Instead, it can be considered as a wrapper or a supervisor for your benchmark.
- Normal Mode
- comparison among commits
- auto-generated report
- CI Mode (in development)
- comparison with baseline
- auto-generated report
- threshold alarms
Codebench can be simply installed by running:
pip install codebench
If you want to install from a source distribution, extract the tarball and run the following command:
python setup.py install
Codebench provides a command line interface. Run codebench -h
for details.
Tired of typing command in CLI? Write a configuration file in yaml format!
Take a look at a sample configuration file, or run codebench --init
to
help you generate one for your project.
See codebench-sample for details.
A quick demo is demonstrated below:
codebench --script ./benchmark.py \
--report_types chart --commits cb91b8 3cd96d bb1541
You may also run codebench
directly in the root directory of sample project, since it has a .codebench.yml
file in the root directory.