Skip to content

Commit

Permalink
chore: automate running benchmarks (#3140)
Browse files Browse the repository at this point in the history
Uses Github actions to run benchmarks.
  • Loading branch information
carllerche committed Nov 14, 2020
1 parent 60366ca commit 97c2c42
Show file tree
Hide file tree
Showing 4 changed files with 59 additions and 4 deletions.
55 changes: 55 additions & 0 deletions .github/workflows/bench.yml
@@ -0,0 +1,55 @@
name: Benchmark
on:
push:
branches:
- master

jobs:
benchmark:
name: Benchmark
runs-on: ubuntu-latest
strategy:
matrix:
bench:
- rt_multi_threaded
- sync_mpsc
- sync_rwlock
- sync_semaphore
steps:
- uses: actions/checkout@v2
- name: Install Rust
run: rustup update stable

# Run benchmark with `go test -bench` and stores the output to a file
- name: Run benchmark
run: cargo bench --bench ${{ matrix.bench }} | tee ../output.txt
working-directory: benches

# Download previous benchmark result from cache (if exists)
- name: Download previous benchmark data
uses: actions/cache@v1
with:
path: ./cache
key: ${{ runner.os }}-benchmark

# Run `github-action-benchmark` action
- name: Store benchmark result
uses: rhysd/github-action-benchmark@v1
with:
name: ${{ matrix.bench }}
# What benchmark tool the output.txt came from
tool: 'cargo'
# Where the output from the benchmark tool is stored
output-file-path: output.txt
# # Where the previous data file is stored
# external-data-json-path: ./cache/benchmark-data.json
# Workflow will fail when an alert happens
fail-on-alert: true
# GitHub API token to make a commit comment
github-token: ${{ secrets.GITHUB_TOKEN }}
# Enable alert commit comment
comment-on-alert: true
alert-comment-cc-users: '@tokio-rs/maintainers'
auto-push: true

# Upload the updated cache file for the next job by actions/cache
8 changes: 4 additions & 4 deletions benches/Cargo.toml
Expand Up @@ -17,13 +17,13 @@ path = "spawn.rs"
harness = false

[[bench]]
name = "mpsc"
path = "mpsc.rs"
name = "sync_mpsc"
path = "sync_mpsc.rs"
harness = false

[[bench]]
name = "scheduler"
path = "scheduler.rs"
name = "rt_multi_threaded"
path = "rt_multi_threaded.rs"
harness = false


Expand Down
File renamed without changes.
File renamed without changes.

0 comments on commit 97c2c42

Please sign in to comment.