iota.lib.cpp
iota.lib.cpp copied to clipboard
Add some performance tests
When I got some time (priority will first be on embedded), I'll add some performance tests for each API (core & extended). I'll look into a free tool for open-source project to track down performance change for each commit (jenkins-like).
Not too much tools available online/for free apparently for this part. I guess most famous one is the performance plugin for Jenkins, but we do not have Jenkins and this would require to be able to self host it, thus to have our own infrastructure and maintain it
I will try the following approach for now:
- On Travis, have a special build running only if this is a PR build
- It will collect time to execute each testing binary and store the report in a file
- It compares performance report between current code and master branch code
- It comments to the PR for any big changes in performance (like +/- 10%)
- Automatically commits with a CI skip the updated report on the PR
I started to check and all these steps should be doable. Will work on that.