Compare commits

..

1 Commits

Author SHA1 Message Date
BodoBolero
be2ad49a62 move benchmarks to another repo 2025-08-12 19:03:20 +02:00
2 changed files with 3 additions and 100 deletions

View File

@@ -300,7 +300,9 @@ jobs:
benchmarks:
# `!failure() && !cancelled()` is required because the workflow depends on the job that can be skipped: `deploy` in PRs
if: github.ref_name == 'main' || (contains(github.event.pull_request.labels.*.name, 'run-benchmarks') && !failure() && !cancelled())
# if: github.ref_name == 'main' || (contains(github.event.pull_request.labels.*.name, 'run-benchmarks') && !failure() && !cancelled())
# moved to another repo
if: false
needs: [ check-permissions, build-build-tools-image, get-benchmarks-durations, deploy ]
permissions:
id-token: write # aws-actions/configure-aws-credentials

View File

@@ -1,99 +0,0 @@
name: verify runner performance with sysbench
on:
# uncomment to run on push for debugging your PR
push:
branches: [ 'bodobolero/sysbench_4_perf_runner' ]
workflow_dispatch:
inputs:
runner_labels_json:
description: JSON array of runner labels to test (e.g. ["small-amd64","large-amd64"])
required: false
default: '["unit-perf-aws-arm"]'
defaults:
run:
shell: bash -euxo pipefail {0}
concurrency:
group: sysbench-runner-perf
cancel-in-progress: true
permissions:
contents: read
jobs:
sysbench:
strategy:
fail-fast: false
matrix:
runner: ${{ fromJSON((github.event_name == 'workflow_dispatch' && inputs.runner_labels_json != '' && inputs.runner_labels_json) || '["unit-perf-aws-arm"]') }}
permissions:
id-token: write # aws-actions/configure-aws-credentials
statuses: write
contents: write
pull-requests: write
runs-on: ${{ matrix.runner }}
timeout-minutes: 120
container:
image: ghcr.io/neondatabase/build-tools:pinned-bookworm
credentials:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
# for changed limits, see comments on `options:` earlier in this file
options: --init --shm-size=512mb --ulimit memlock=67108864:67108864 --ulimit nofile=65536:65536 --security-opt seccomp=unconfined
steps:
- name: Checkout sysbench source
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
repository: akopytov/sysbench
ref: master
path: sysbench
- name: Build sysbench
run: |
cd "$GITHUB_WORKSPACE/sysbench"
./autogen.sh
./configure --without-mysql
make -j"$(nproc || sysctl -n hw.ncpu || echo 2)"
./src/sysbench --version
- name: sysbench io prepare
run: |
"$GITHUB_WORKSPACE/sysbench/src/sysbench" fileio \
--file-total-size=2G \
--file-test-mode=rndrw \
--file-extra-flags=direct \
--file-fsync-freq=0 \
--threads=4 \
--time=60 prepare
- name: sysbench io run
run: |
"$GITHUB_WORKSPACE/sysbench/src/sysbench" fileio \
--file-total-size=2G \
--file-test-mode=rndrw \
--file-extra-flags=direct \
--file-fsync-freq=0 \
--threads=4 \
--time=60 run
- name: sysbench cpu
run: |
"$GITHUB_WORKSPACE/sysbench/src/sysbench" cpu \
--cpu-max-prime=200000 \
--threads=8 \
--time=60 run
- name: sysbench memory
run: |
"$GITHUB_WORKSPACE/sysbench/src/sysbench" memory \
--memory-block-size=1M \
--memory-total-size=0 \
--threads=8 \
--time=60 \
--memory-oper=write \
run