Skip to content

Commit bc8ca04

Browse files
vasil-pashovclaude[bot]
authored andcommitted
Update .github/workflows/benchmark_cpp_microbenchmarks.yml
Co-authored-by: claude[bot] <209825114+claude[bot]@users.noreply.github.com>
1 parent 6405969 commit bc8ca04

4 files changed

Lines changed: 76 additions & 271 deletions

File tree

.github/workflows/analysis_workflow.yml

Lines changed: 2 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -77,32 +77,10 @@ jobs:
7777
storage: ${{ github.ref_name == 'master' && 'ALL' || inputs.storage || 'LMDB'}}
7878
suite_overwrite: ${{ inputs.suite_overwrite || ''}}
7979

80-
benchmark_cpp_microbenchmarks:
81-
needs: [get_commits_to_benchmark]
82-
strategy:
83-
fail-fast: false
84-
matrix:
85-
commits: ${{ fromJson(needs.get_commits_to_benchmark.outputs.matrix) }}
86-
name: C++ Microbenchmarks ${{ matrix.commits }}
87-
continue-on-error: true
88-
uses: ./.github/workflows/benchmark_cpp_microbenchmarks.yml
89-
secrets: inherit
90-
with:
91-
commit: ${{ matrix.commits }}
92-
benchmark_all_tags: ${{ inputs.benchmark_all_tags || false }}
93-
dev_image_tag: ${{ inputs.dev_image_tag || 'latest' }}
94-
9580
publish_benchmark_results_to_gh_pages:
9681
name: Publish benchmark results to gh-pages
97-
# Run on schedule when Python benchmarks succeeded.
98-
# always() bypasses the default "skip if any need failed" behaviour so that a
99-
# C++ microbenchmark regression does not prevent publishing Python results.
100-
if: |
101-
always() &&
102-
github.event_name == 'schedule' &&
103-
!cancelled() &&
104-
needs.benchmark_commits.result == 'success'
105-
needs: [benchmark_commits, benchmark_cpp_microbenchmarks]
82+
if: github.event_name == 'schedule' && needs.benchmark_commits.result == 'success'
83+
needs: [benchmark_commits]
10684
runs-on: ubuntu-22.04
10785
container:
10886
image: ubuntu:22.04 # Native runner doesn't allow setting up the ca softlinks required below

.github/workflows/benchmark_commits.yml

Lines changed: 20 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,23 @@ jobs:
7171
env:
7272
CMAKE_BUILD_PARALLEL_LEVEL: ${{vars.CMAKE_BUILD_PARALLEL_LEVEL}}
7373

74+
- name: Build and run C++ benchmarks
75+
shell: bash -l {0}
76+
run: |
77+
cmake --preset linux-release -DTEST=ON cpp
78+
cmake --build cpp/out/linux-release-build --target benchmarks
79+
BINARY=$(pwd)/cpp/out/linux-release-build/arcticdb/benchmarks
80+
RESULTS=$(pwd)/cpp/out/linux-release-build/arcticdb/benchmarks_results.json
81+
"$BINARY" \
82+
--benchmark_out="$RESULTS" \
83+
--benchmark_out_format=json \
84+
--benchmark_min_time=20x \
85+
--benchmark_time_unit=ms
86+
echo "ARCTICDB_CPP_BENCHMARKS_BINARY=$BINARY" >> $GITHUB_ENV
87+
echo "ARCTICDB_CPP_BENCHMARKS_RESULTS=$RESULTS" >> $GITHUB_ENV
88+
env:
89+
CMAKE_BUILD_PARALLEL_LEVEL: ${{vars.CMAKE_BUILD_PARALLEL_LEVEL}}
90+
7491
- name: Create test bucket
7592
shell: bash -el {0}
7693
run: |
@@ -108,14 +125,14 @@ jobs:
108125
109126
- name: Configure what suite or tests to execute
110127
shell: bash -el {0}
111-
run: |
128+
run: |
112129
if [ "${{ inputs.storage }}" == "REAL" ]; then
113130
echo "ARCTICDB_STORAGE_AWS_S3=1" >> $GITHUB_ENV
114131
echo "ARCTICDB_STORAGE_LMDB=0" >> $GITHUB_ENV
115132
elif [ "${{ inputs.storage }}" == "ALL" ]; then
116133
echo "ARCTICDB_STORAGE_AWS_S3=1" >> $GITHUB_ENV
117134
fi
118-
135+
119136
SUITE_OVERWRITE=${{ github.event.inputs.suite_overwrite }}
120137
echo "selection of SUITE_OVERWRITE=$SUITE_OVERWRITE"
121138
# Remove leading and trailing whitespaces using parameter expansion
@@ -133,7 +150,7 @@ jobs:
133150
- name: Benchmark given commit
134151
if: github.event_name != 'pull_request' || inputs.benchmark_all_tags == true
135152
shell: bash -l {0}
136-
run: |
153+
run: |
137154
echo "Using S3 bucket: ${ARCTICDB_REAL_S3_BUCKET}"
138155
git config --global --add safe.directory .
139156
python -m asv run --show-stderr --durations all --bench $SUITE ${{ inputs.commit }}^!

.github/workflows/benchmark_cpp_microbenchmarks.yml

Lines changed: 0 additions & 151 deletions
This file was deleted.

0 commit comments

Comments
 (0)