Skip to content

Conversation

@akx
Copy link
Contributor

@akx akx commented May 19, 2025

Timing cargo run means also timing the build if one doesn't exist.

This splits the benchmark CI to build first, then just time the compiled binary.

A follow-up could be to use https://github.com/sharkdp/hyperfine so the benchmark is run a couple of times, but then you'd need to take into account how many times Hyperfine decides to run the benchmark, which is not something I want to implement in Bash math.

I adjusted the baseline duration accordingly in this PR.

@akx akx mentioned this pull request May 19, 2025
@benjamin051000
Copy link
Contributor

Is the hardware guaranteed to be the same across benchmark runs? I have no idea how GH actions runners are chosen/provisioned.

@akx
Copy link
Contributor Author

akx commented May 21, 2025

Is the hardware guaranteed to be the same across benchmark runs?

Probably absolutely not. All I know the default runners are some Azure VMs.

Repository owner deleted a comment from github-actions bot May 24, 2025
@louis-e louis-e merged commit 71e28d1 into louis-e:main May 24, 2025
4 checks passed
@akx akx deleted the fix-benchmark-ci branch May 24, 2025 10:42
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.

3 participants