Skip to content

Commit

Permalink
Merge pull request #5 from reilabs/bench_script
Browse files Browse the repository at this point in the history
chore: added benchmark comparison script
  • Loading branch information
Eagle941 authored Sep 17, 2024
2 parents 2ca7610 + 7e44003 commit e6658d0
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 46 deletions.
46 changes: 0 additions & 46 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -121,52 +121,6 @@ jobs:
- run: cargo test
- run: cargo test --features concurrency

native-blockifier-artifacts-push:
runs-on: ubuntu-20.04
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable

- uses: Swatinem/rust-cache@v2
with:
prefix-key: "v0-rust-ubuntu-20.04"

- name: Build native blockifier
run: ./build_native_blockifier.sh

# Commit hash on pull request event would be the head commit of the branch.
- name: Get commit hash prefix for PR update
if: ${{ github.event_name == 'pull_request' }}
env:
COMMIT_SHA: ${{ github.event.pull_request.head.sha }}
run: echo "SHORT_HASH=${COMMIT_SHA:0:7}" >> $GITHUB_ENV

# On push event (to main, for example) we should take the commit post-push.
- name: Get commit hash prefix for merge
if: ${{ github.event_name != 'pull_request' }}
env:
COMMIT_SHA: ${{ github.event.after }}
run: echo "SHORT_HASH=${COMMIT_SHA:0:7}" >> $GITHUB_ENV

# Rename is required; see https://pyo3.rs/v0.19.2/building_and_distribution#manual-builds.
- name: Rename shared object
run: |
mv \
target/release/libnative_blockifier.so \
target/release/native_blockifier.pypy39-pp73-x86_64-linux-gnu.so
- name: Authenticate with GCS
uses: "google-github-actions/auth@v2"
with:
credentials_json: ${{ secrets.SA_NATIVE_BLOCKIFIER_ARTIFACTS_BUCKET_WRITER_ACCESS_KEY }}

- name: Upload binary to GCP
id: upload_file
uses: "google-github-actions/upload-cloud-storage@v2"
with:
path: "target/release/native_blockifier.pypy39-pp73-x86_64-linux-gnu.so"
destination: "native_blockifier_artifacts/${{ env.SHORT_HASH }}/release/"

# Keep the name 'udeps' to match original action name, so we don't need to define specific branch
# rules on Github for specific version branches.
udeps:
Expand Down
18 changes: 18 additions & 0 deletions scripts/bench.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
#!/bin/bash

# This script analyses the peformance changes of commit $2 with respect to $1.

cd "$(dirname "$0")"

BEFORE_CHANGES_COMMIT=$1
AFTER_CHANGES_COMMIT=$2

git checkout -q $BEFORE_CHANGES_COMMIT
echo "Running bechmark on commit $BEFORE_CHANGES_COMMIT"
cargo bench --quiet --locked --bench blockifier_bench -- --save-baseline before_changes --noplot > /dev/null 2>&1

git checkout -q $AFTER_CHANGES_COMMIT
echo "Running bechmark on commit $AFTER_CHANGES_COMMIT"
cargo bench --quiet --locked --bench blockifier_bench -- --save-baseline after_changes --noplot > /dev/null 2>&1

cargo bench --quiet --bench blockifier_bench -- --load-baseline after_changes --baseline before_changes --noplot --verbose

0 comments on commit e6658d0

Please sign in to comment.