-
-
Notifications
You must be signed in to change notification settings - Fork 49
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Support benchmarking reports and lower the benching time. (#242)
* Support benchmarking reports and lower the benching time. * Support benchmarking reports and lower the benching time. * Use appropriate GH token. * split up files to increase performance * Final touches? * Only push on master Comment all the time * fix invalid file * only run oce_rlcs intensive is skipped * make it run intensive as a separate only test * switch to using gh edit token for now * Split benchmarking action into 2 - one comments on all pushes, and the second uploads benchmarking data from pushes to master. * try to use the intensive version Co-authored-by: DivvyCr <DivvyCr@users.noreply.github.com> Co-authored-by: dtracers <dtracers@gmail.com>
- Loading branch information
1 parent
0d03653
commit 454cfd6
Showing
3 changed files
with
92 additions
and
12 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,65 @@ | ||
# Uploads benchmarking data on push to master. | ||
|
||
name: Benchmarking (Master) | ||
|
||
on: | ||
push: | ||
branches: [ master ] | ||
|
||
jobs: | ||
build: | ||
runs-on: ubuntu-latest | ||
strategy: | ||
matrix: | ||
benchtest: [short_sample, short_dropshot, full_rumble, oce_rlcs, intensive_oce_rlcs] | ||
|
||
steps: | ||
- uses: actions/checkout@v2 | ||
- uses: actions/setup-python@v1 | ||
with: | ||
python-version: '3.7' | ||
architecture: 'x64' | ||
|
||
- name: Install/Update pip and wheel. | ||
run: | ||
python -m pip install --upgrade pip && | ||
pip install wheel | ||
|
||
- name: Set-up and install protobuf. | ||
run: chmod 777 ./_travis/install-protoc.sh && ./_travis/install-protoc.sh 2.6.1 | ||
|
||
- name: Install dependencies. | ||
run: pip install -r requirements.txt && pip install -r requirements-test.txt | ||
|
||
- name: Initialise. | ||
run: python init.py | ||
|
||
- name: Prepare benchmark. | ||
run: | | ||
pip install -r requirements.txt && pip install -r requirements-test.txt | ||
cd carball/tests/benchmarking | ||
echo === BENCHMARK DIRECTORY === | ||
ls -lh | ||
echo =========================== | ||
- name: Run benchmark. | ||
run: | | ||
cd carball/tests/benchmarking | ||
pytest benchmarking.py --benchmark-json carball_benchmarking.json -k 'test_${{matrix.benchtest}}' | ||
# REQUIRES gh-pages BRANCH IN THE MAIN REPO (for the graphs). | ||
- name: Process and store benchmark ${{matrix.benchtest}}. | ||
if: contains(github.ref, 'master') | ||
uses: rhysd/github-action-benchmark@v1 | ||
with: | ||
name: Carball Benchmarks ${{matrix.benchtest}} | ||
tool: 'pytest' | ||
output-file-path: carball/tests/benchmarking/carball_benchmarking.json | ||
benchmark-data-dir-path: dev/bench/${{matrix.benchtest}}/ | ||
# Use personal access token instead of GITHUB_TOKEN due to | ||
# https://git.luolix.topmunity/t5/GitHub-Actions/Github-action-not-triggering-gh-pages-upon-push/td-p/26869/highlight/false | ||
github-token: ${{ secrets.GH_WIKI_EDIT_TOKEN }} | ||
auto-push: true | ||
alert-threshold: '125%' # If performance is 1.25x worse, there will be an alert | ||
comment-always: false | ||
comment-on-alert: false # I think benchmarking.yml takes care of this. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
454cfd6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Carball Benchmarks short_sample
carball/tests/benchmarking/benchmarking.py::test_short_sample
0.886667523998696
iter/sec (stddev: 0.020147653309411328
)0.7970441034287731
iter/sec (stddev: 0.014330996697547907
)0.90
This comment was automatically generated by workflow using github-action-benchmark.
454cfd6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Carball Benchmarks short_dropshot
carball/tests/benchmarking/benchmarking.py::test_short_dropshot
0.6172276891450061
iter/sec (stddev: 0.0309198930007447
)0.5739862259534272
iter/sec (stddev: 0.03095164285962033
)0.93
This comment was automatically generated by workflow using github-action-benchmark.
454cfd6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Carball Benchmarks oce_rlcs
carball/tests/benchmarking/benchmarking.py::test_oce_rlcs
0.05968221671488029
iter/sec (stddev: 0.669607929340541
)0.054604254911294156
iter/sec (stddev: 0.19284145756466925
)0.91
This comment was automatically generated by workflow using github-action-benchmark.
454cfd6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Carball Benchmarks full_rumble
carball/tests/benchmarking/benchmarking.py::test_full_rumble
0.0477529886293101
iter/sec (stddev: 0.20525246397785576
)0.05711518967236854
iter/sec (stddev: 0.4579447987872721
)1.20
This comment was automatically generated by workflow using github-action-benchmark.
454cfd6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Carball Benchmarks short_sample
carball/tests/benchmarking/benchmarking.py::test_short_sample
0.8237620738552801
iter/sec (stddev: 0.01351782999233524
)0.7970441034287731
iter/sec (stddev: 0.014330996697547907
)0.97
This comment was automatically generated by workflow using github-action-benchmark.
454cfd6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Carball Benchmarks short_dropshot
carball/tests/benchmarking/benchmarking.py::test_short_dropshot
0.6068667962086162
iter/sec (stddev: 0.02203122789362341
)0.5739862259534272
iter/sec (stddev: 0.03095164285962033
)0.95
This comment was automatically generated by workflow using github-action-benchmark.
454cfd6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Carball Benchmarks oce_rlcs
carball/tests/benchmarking/benchmarking.py::test_oce_rlcs
0.06986897460162976
iter/sec (stddev: 0.4467895065942251
)0.054604254911294156
iter/sec (stddev: 0.19284145756466925
)0.78
This comment was automatically generated by workflow using github-action-benchmark.
454cfd6
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Carball Benchmarks full_rumble
carball/tests/benchmarking/benchmarking.py::test_full_rumble
0.048017060810271336
iter/sec (stddev: 0.21024411784796018
)0.05711518967236854
iter/sec (stddev: 0.4579447987872721
)1.19
This comment was automatically generated by workflow using github-action-benchmark.