Skip to content

rv32im circuit updates #1849

rv32im circuit updates

rv32im circuit updates #1849

Workflow file for this run

name: Benchmark Check
on:
push:
branches: [main, "release-*"]
pull_request:
branches: [main, "release-*"]
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
# this is needed to gain access via OIDC to the S3 bucket for caching
permissions:
id-token: write
contents: read
env:
RISC0_BUILD_LOCKED: 1
RISC0_TOOLCHAIN_VERSION: v2024-04-22.0
jobs:
bench:
runs-on:
labels: [self-hosted, prod, bench, "${{ matrix.os }}", "${{ matrix.device }}"]
strategy:
fail-fast: false
matrix:
os: [Linux, macOS]
feature: [prove]
device: [cpu]
include:
- os: Linux
feature: cuda
device: nvidia_rtx_3090_ti
- os: macOS
feature: metal
device: apple_m2_pro
env:
FEATURE: ${{ matrix.feature }}
DISABLE_S3: ${{ matrix.device == 'nvidia_rtx_3090_ti' }}
steps:
- uses: actions/checkout@v4
- if: matrix.feature == 'cuda'
uses: ./.github/actions/cuda
- uses: ./.github/actions/rustup
- uses: ./.github/actions/sccache
with:
key: ${{ matrix.os }}-${{ matrix.feature }}
disable_s3: ${{ env.DISABLE_S3 }}
- run: cargo run --bin cargo-risczero --no-default-features -- risczero install --version $RISC0_TOOLCHAIN_VERSION
- name: Run benchmarks
run: cargo bench --bench fib -F $FEATURE
- name: Download previous benchmark data
uses: actions/cache@v4
with:
path: ./cache
key: fib-${{ runner.os }}-${{ matrix.device }}
- name: Analyze benchmark results
uses: risc0/github-action-benchmark@v1.19.3
with:
name: "${{ matrix.os }}-${{ matrix.device }}"
tool: 'customBiggerIsBetter'
output-file-path: target/hotbench/fib/benchmark.json
external-data-json-path: ./cache/benchmark.json
github-token: ${{ secrets.GITHUB_TOKEN }}
alert-threshold: '120%'
comment-on-alert: true
fail-on-alert: true
summary-always: true