Skip to content
This repository was archived by the owner on Jan 7, 2025. It is now read-only.

add tpch benchmark workflow #8

add tpch benchmark workflow

add tpch benchmark workflow #8

Workflow file for this run

name: Rust TPC-H Benchmarks
# Do not run this workflow on pull request since this workflow has permission to modify contents.
on:
push:
branches:
- master
# Hack for testing (REMOVE)
- continuous-bench-attempt
permissions:
# deployments permission to deploy GitHub pages website
deployments: write
# contents permission to update benchmark contents in gh-pages branch
contents: write
jobs:
benchmark:
# Make sure an error doesn't mean we waste everything that has been compiled.
continue-on-error: true
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
name: Run Rust benchmark example
runs-on: ${{ matrix.os }}
steps:
# Setup Rust.
- uses: actions/checkout@v4
- run: rustup toolchain install stable --profile minimal --no-self-update
# Make sure to use cached compilation objects if they exist.
- uses: Swatinem/rust-cache@v2
# Run the benchmark and store to `output.txt`.
- name: Run benchmark
# (REMOVE) run everything instead of just q6
run: cargo bench --bench planner_bench tpch/q6 | tee output.txt
# Download the previous benchmark result from the cache (if it exists).
- name: Download previous benchmark data
uses: actions/cache@v4
with:
path: ./cache
key: ${{ runner.os }}-benchmark
# Run the `github-action-benchmark` action.
- name: Store benchmark result
uses: benchmark-action/github-action-benchmark@v1
with:
name: Rust Benchmark
tool: "cargo"
output-file-path: output.txt
gh-pages-branch: gh-pages
external-data-json-path: cache/benchmark-data.json
github-token: ${{ secrets.GITHUB_TOKEN }}
auto-push: true
# Show alert with commit comment on detecting possible performance regression
alert-threshold: "125%"
summary-always: true
comment-on-alert: true
fail-on-alert: true
alert-comment-cc-users: "@connortsui20"