Skip to content

Improve CI workflow for benchmarks#117

Open
mariaxarisi wants to merge 4 commits into
open-s4c:mainfrom
mariaxarisi:ci
Open

Improve CI workflow for benchmarks#117
mariaxarisi wants to merge 4 commits into
open-s4c:mainfrom
mariaxarisi:ci

Conversation

@mariaxarisi

Copy link
Copy Markdown
Contributor

This PR improves the reliability of the benchmarking pipeline by running direct branch comparisons and standardizing all tests to use hyperfine.

What Changed:

  • Checks out and builds both main and the current branch, running them sequentially on the exact same CI runner to eliminate hardware differences.
  • Added leveldb, raytracing, and scratchapixel to the CI matrix so they run in parallel, speeding up CI execution.
  • Switched the leveldb benchmark from a duration-based run (--duration=10) to a fixed workload (--reads=500000) and migrated it to use hyperfine.
  • Refactored the way results from hyperfine are parsed to correctly handle ms and s units.

- Replaced artifact-based baseline comparison with a dual-checkout strategy.
- Checks out both `main` (baseline) and the current code, running them sequentially on the same GitHub Actions runner.

Signed-off-by: mariaxarisi <maria.charisi@huawei.com>
Signed-off-by: mariaxarisi <maria.charisi@huawei.com>
Signed-off-by: mariaxarisi <maria.charisi@huawei.com>
Signed-off-by: mariaxarisi <maria.charisi@huawei.com>

@ggeier ggeier left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice improvement, good job 👍

@ggeier ggeier requested a review from db7 June 19, 2026 14:43
@ggeier

ggeier commented Jun 22, 2026

Copy link
Copy Markdown
Collaborator

@db7 we'll have to merge this one without the benchmark pipeline passing, because the measurement units changed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants