Skip to content

chore: bump version to 9.11.2 (#4909) #12404

chore: bump version to 9.11.2 (#4909)

chore: bump version to 9.11.2 (#4909) #12404

name: Run Benchmarks
on:
push:
branches:
- master
pull_request:
branches:
- '*'
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.sha }}
cancel-in-progress: true
env:
VCPKG_BINARY_SOURCES: 'clear;x-gha,readwrite'
jobs:
benchmark:
runs-on: ubuntu-latest
permissions:
contents: write
deployments: write
steps:
- uses: actions/checkout@v6
with:
submodules: false
fetch-depth: 0
- name: Init submodules with retry
shell: bash
run: |
git config --global --add safe.directory "$(pwd)"
for attempt in 1 2 3 4 5; do
if git submodule update --init --recursive; then
echo "Submodule init succeeded on attempt $attempt"
exit 0
fi
echo "Attempt $attempt failed, retrying in 15s..."
sleep 15
done
echo "Submodule init failed after 5 attempts"
exit 1
- uses: lukka/get-cmake@latest
- name: Install build dependencies (Linux only)
if: runner.os == 'Linux'
run: |
sudo apt-get update || true
sudo apt-get install -y ninja-build autoconf automake autoconf-archive
- name: Export GitHub Actions cache environment variables
uses: actions/github-script@v7
with:
script: |
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');
- name: Clear vcpkg temp files and update
shell: bash
run: |
rm -rf ext_libs/vcpkg/downloads
rm -rf ext_libs/vcpkg/buildtrees
git submodule update --init ext_libs/vcpkg
- name: Setup vcpkg
uses: lukka/run-vcpkg@v11
with:
vcpkgDirectory: '${{ github.workspace }}/ext_libs/vcpkg'
- name: Configure
run: cmake --preset vcpkg-release -DBUILD_BENCHMARKS=On -DUSE_LATEST_STD=ON
- name: Compile
run: cmake --build build --target vw-benchmarks.out
- name: Run benchmarks
run: >
./build/test/benchmarks/vw-benchmarks.out
--benchmark_min_time=3
--benchmark_format=json
--benchmark_out_format=json
--benchmark_out=benchmark_results.json
- uses: benchmark-action/github-action-benchmark@v1
with:
tool: 'googlecpp'
output-file-path: benchmark_results.json
alert-threshold: '150%'
fail-on-alert: true
comment-on-alert: true
auto-push: false
github-token: ${{ secrets.GITHUB_TOKEN }}
- name: Push results to gh-pages branch
if: ${{ github.event_name == 'push' && github.ref_name == 'master' }}
run: git push 'https://VowpalWabbit:${{ secrets.GITHUB_TOKEN }}@github.com/VowpalWabbit/vowpal_wabbit.git' gh-pages:gh-pages