Skip to content

add a buggy tree verification #1161

add a buggy tree verification

add a buggy tree verification #1161

Workflow file for this run

name: expander-rs CI
on: [pull_request, push]
env:
RUSTFLAGS: "-Dwarnings -C target-cpu=native"
RUST_BACKTRACE: 1
jobs:
lint:
name: Lint
runs-on: 7950x3d
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
components: rustfmt, clippy
- run: python3 ./scripts/install.py
- run: cargo fmt --all -- --check
- run: cargo clippy --all
env:
RUSTFLAGS: "-Dwarnings -C target-cpu=native -C target-feature=+avx512f"
build-and-test:
name: Build and Test (${{ matrix.os }}${{ matrix.feature != '' && format(', {0}', matrix.feature) || '' }})
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: macos-latest
- os: 7950x3d
feature: avx2
- os: 7950x3d
feature: avx512f
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
# The prefix cache key, this can be changed to start a new cache manually.
prefix-key: "mpi-v5.0.5" # update me if brew formula changes to a new version
- name: Set RUSTFLAGS for AVX
if: matrix.feature != ''
run: echo "RUSTFLAGS=$RUSTFLAGS -C target-feature=+${{ matrix.feature }}" >> $GITHUB_ENV
- name: Build and Test
run: |
python3 ./scripts/install.py
mpiexec --version
cargo run --bin=dev-setup --release
cargo build --all-features --release
cargo test --all-features --release --workspace
gkr-e2e:
name: Benchmark (${{ matrix.os }}${{ matrix.feature != '' && format(', {0}', matrix.feature) || '' }}, ${{ matrix.field }})
runs-on: ${{ matrix.os }}
strategy:
matrix:
include:
- os: macos-latest
field: m31ext3
- os: macos-latest
field: fr
- os: macos-latest
field: gf2ext128
- os: 7950x3d
feature: avx2
field: m31ext3
- os: 7950x3d
feature: avx2
field: fr
- os: 7950x3d
feature: avx2
field: gf2ext128
- os: 7950x3d
feature: avx512f
field: m31ext3
- os: 7950x3d
feature: avx512f
field: fr
- os: 7950x3d
feature: avx512f
field: gf2ext128
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- uses: Swatinem/rust-cache@v2
with:
# The prefix cache key, this can be changed to start a new cache manually.
prefix-key: "mpi-v5.0.5" # update me if brew formula changes to a new version
- name: Set RUSTFLAGS for AVX
if: matrix.feature != ''
run: echo "RUSTFLAGS=$RUSTFLAGS -C target-feature=+${{ matrix.feature }}" >> $GITHUB_ENV
- name: Run benchmark
run: |
python3 ./scripts/install.py
cargo run --bin=dev-setup --release
cargo run --bin=gkr --release -- -t ${{ matrix.os == 'macos-latest' && 2 || 16 }} -f ${{ matrix.field }}