Skip to content

feat: add lambdavm #278

feat: add lambdavm

feat: add lambdavm #278

Workflow file for this run

name: Test and clippy verifier crates
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.event_name == 'pull_request' }}
on:
push:
branches:
- master
- 'release/**'
pull_request:
env:
CARGO_TERM_COLOR: always
jobs:
show-program-vk-and-proof-size:
name: Show program vk and proof size
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Run
run: |
echo "## Program VK size and Proof size" >> "$GITHUB_STEP_SUMMARY"
python3 .github/scripts/show-program-vk-and-proof-size.py \
| tee -a "$GITHUB_STEP_SUMMARY"
benchmark-verifier:
name: Benchmark verifier crates
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
# protoc is needed for crate `sp1-prover-types` (transitive dep of the
# verifier bench). The rest are needed to build `proofman-starks-lib-c`,
# which is pulled by `proofman-fields` unconditionally on x86_64.
- name: Install build dependencies
run: |
sudo apt-get update
sudo apt-get install -y protobuf-compiler nasm nlohmann-json3-dev libgmp-dev libsodium-dev libomp-dev libopenmpi-dev libssl-dev
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
- name: Cache dependencies
uses: Swatinem/rust-cache@v2
- name: Run verifier benchmark
run: |
cargo bench \
--package ere-verifier \
--bench verify \
| tee bench-output.txt
- name: Append verification time to summary
run: |
{
echo "# Verification time"
echo ""
echo '```'
grep -E '^verify/' bench-output.txt | awk '{print; print ""}'
echo '```'
} >> "$GITHUB_STEP_SUMMARY"
test-stable:
name: Test and clippy verifier crates with stable toolchain
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
# protoc is needed for crate `sp1-prover-types`. The rest are needed to
# build `proofman-starks-lib-c`, which is pulled by `proofman-fields`
# unconditionally on x86_64.
- name: Install build dependencies
run: |
sudo apt-get update
sudo apt-get install -y protobuf-compiler nasm nlohmann-json3-dev libgmp-dev libsodium-dev libomp-dev libopenmpi-dev libssl-dev
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable
with:
components: clippy
- name: Cache dependencies
uses: Swatinem/rust-cache@v2
- name: Run cargo clippy verifier crates
run: |
cargo clippy --all-targets \
--package ere-verifier \
--package ere-verifier-lambdavm \
--package ere-verifier-openvm \
--package ere-verifier-sp1 \
--package ere-verifier-zisk \
-- -D warnings
- name: Run cargo test verifier crates
run: |
cargo test --release \
--package ere-verifier \
--package ere-verifier-lambdavm \
--package ere-verifier-openvm \
--package ere-verifier-sp1 \
--package ere-verifier-zisk \
--test verifier