Skip to content

feat: add example benchmark workflow #4

feat: add example benchmark workflow

feat: add example benchmark workflow #4

Workflow file for this run

name: Benchmarks
on:
push:
branches:
- master
pull_request:
jobs:
test:
name: Benchmark library
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v4
- name: Install Nargo
uses: noir-lang/noirup@v0.1.3
with:
toolchain: 0.34.0
- name: Install bb
run: |
npm install -g bbup
bbup -nv 0.34.0
ls ~/.bb/
- name: Build Noir benchmark programs
run: nargo export
- name: Generate gates report
run: ./scripts/build-gates-report.sh
env:
BACKEND: ~/.bb/bb
- name: Compare gates reports
id: gates_diff
uses: noir-lang/noir-gates-diff@1931aaaa848a1a009363d6115293f7b7fc72bb87
with:
report: gates_report.json
summaryQuantile: 0.9 # only display the 10% most significant circuit size diffs in the summary (defaults to 20%)
- name: Add gates diff to sticky comment
if: github.event_name == 'pull_request' || github.event_name == 'pull_request_target'
uses: marocchino/sticky-pull-request-comment@v2
with:
# delete the comment in case changes no longer impact circuit sizes
delete: ${{ !steps.gates_diff.outputs.markdown }}
message: ${{ steps.gates_diff.outputs.markdown }}