blob: c7a097020410afa7254301dcbd0b43789654fc62 [file] [log] [blame] [edit]
name: Regression benchmark
on:
workflow_run:
workflows: [Build and test]
types: [completed]
# branches: [main]
permissions:
contents: write
deployments: write
jobs:
benchmark:
name: Performance regression check
runs-on: ubuntu-latest
env:
CACHE_DIR: ${{ github.workspace }}/.ccache
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
token: ${{ secrets.GITHUB_TOKEN }}
- name: Setup Python Version
uses: actions/setup-python@v5
with:
python-version: 3.11 # Install the python version needed
- name: Set PYTHONPATH
run: export PYTHONPATH=build/tools/mpact/python_packages/mpact
shell: bash
- name: Build
run: cmake --build build --target build-benchmark-mpact
- name: Install requirements
run: |
export CCACHE_DIR=${{ env.CACHE_DIR }}
python -m pip install --upgrade pip
python -m pip install pytest pytest-benchmark
- name: Run benchmark
run: pytest benchmark/python/benchmarks/regression_benchmark.py --benchmark-json output.json
- name: Store benchmark result
uses: benchmark-action/github-action-benchmark@v1
with:
tool: 'pytest'
output-file-path: output.json
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
# Mention @rhysd in the commit comment
alert-comment-cc-users: '@yinying-lisa-li'
# Push and deploy GitHub pages branch automatically
auto-push: true