Skip to content

Benchmarking

Benchmarking #31

Workflow file for this run

name: Benchmarking
on:
workflow_dispatch:
release:
types: [published]
jobs:
benchmark:
name: Continuous benchmarking
runs-on: ubuntu-ghcloud
steps:
- uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # pin@v3
- name: Get old benchmarks
uses: actions/checkout@ac593985615ec2ede58e132d2e21d2b1cbd6127c # pin@v3
with:
ref: gh-pages
path: gh-pages
- run: mkdir -p target; cp -r gh-pages/benchmarks/criterion target;
- name: Install criterion
run: cargo install cargo-criterion
- name: Run benchmarks
run: cd fastcrypto; cargo criterion --message-format=json --no-default-features --features experimental > ../${{ github.sha }}.json; cd ..
- name: Deploy latest benchmark report
uses: peaceiris/actions-gh-pages@373f7f263a76c20808c831209c920827a82a2847 # pin@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./target/criterion
destination_dir: benchmarks/criterion
- name: Move benchmark json to history
run: mkdir history; cp ${{ github.sha }}.json history/
- name: Deploy benchmark history
uses: peaceiris/actions-gh-pages@373f7f263a76c20808c831209c920827a82a2847 # pin@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: history/
destination_dir: benchmarks/history
keep_files: true