Skip to content

Add 32-bit x86 compile test #12

Add 32-bit x86 compile test

Add 32-bit x86 compile test #12

Workflow file for this run

# Benchmarks the current code against the previous release (latest vX.Y.Z tag)
# on Linux, macOS and Windows. If the new code is more than 2% slower than the
# previous release at any of the tested array sizes the job fails, which helps
# detect performance regressions.
name: benchmark
# Run on every push, so any branch (including feature branches) is benchmarked.
on: push
jobs:
benchmark:
name: Benchmark vs. previous release (${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
defaults:
run:
# Use bash on every OS (Git Bash on Windows) so the one script works
# everywhere. The script relies only on POSIX tools (awk), not bc.
shell: bash
steps:
- name: Checkout
uses: actions/checkout@v4
with:
# Fetch all history and tags so the script can build the previous
# release from its git tag.
fetch-depth: 0
- name: Install Rust nightly
uses: dtolnay/rust-toolchain@nightly
- name: Cache cargo registry and build artifacts
uses: Swatinem/rust-cache@v2
- name: Benchmark latest code vs. previous release
run: ./scripts/benchmark-vs-prev-release.sh