-
Notifications
You must be signed in to change notification settings - Fork 1
46 lines (38 loc) · 1.24 KB
/
bench.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
name: Benchmarking
on:
release:
types: [ published ]
env:
CARGO_TERM_COLOR: always
CARGO_INCREMENTAL: 0
CARGO_NET_RETRY: 10
RUSTFLAGS: "-D warnings"
RUSTUP_MAX_RETRIES: 10
RUST_BACKTRACE: 1
jobs:
iai-benchmarks:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- uses: dtolnay/rust-toolchain@stable
# Install the benchmark runner
- name: Install Valgrind
run: sudo apt-get install -y valgrind
- name: Install Runner
run: cargo install --version 0.10.2 iai-callgrind-runner
# Run all benchmarks
- name: Run
run: cargo bench --bench prof-twomap-editing --bench prof-twomap-reading --bench prof-twomap-sewing-unsewing -- --save-summary=json > bench.out
# Move the bench.out file to target directory
# sudo because GitHub actions are insconsistent
- name: Chore
run: mv bench.out target/iai/honeycomb-benches/
- name: Deploy Results
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_branch: benches/${{ github.ref }}
publish_dir: ./target/iai/honeycomb-benches
force_orphan: true