feat(bench): add poll measurements and comparison tooling - #4122
Draft
diegomrsantos wants to merge 3 commits into
Draft
feat(bench): add poll measurements and comparison tooling#4122diegomrsantos wants to merge 3 commits into
diegomrsantos wants to merge 3 commits into
Conversation
Describe comparisons between arbitrary server builds and require an explicit seccomp profile path. Treat poll diagnostics as an optional capability of the server revision being measured.
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #4122 +/- ##
============================================
- Coverage 86.02% 86.01% -0.01%
+ Complexity 1451 1449 -2
============================================
Files 1248 1248
Lines 194879 195623 +744
Branches 160177 160921 +744
============================================
+ Hits 167637 168273 +636
- Misses 23141 23198 +57
- Partials 4101 4152 +51
🚀 New features to boost your workflow:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Which issue does this PR address?
Relates to #4117. The benchmark tooling was extracted from #4119 so it can be reviewed independently of the poll completion fix.
Rationale
Comparing changes to polling needs explicit control over polling behavior and latency measurement, together with raw observations and a repeatable workload setup.
What changed?
The benchmark client adds optional polling and latency selectors, raw poll observations, run manifests, and producer samples. Failed and interrupted runs retain their artifacts, and reports handle short runs with empty time series. Existing selector defaults and the report JSON schema are preserved.
A Python runner prepares workloads, records binary hashes and process samples, schedules paired runs, and compares results. The tooling builds against current master and does not require the server changes in #4119. The documentation describes measurement limits and treats server diagnostics as optional.
Local Execution
cargo test --locked -p iggy-bench -p bench-report: 42 tests.No new performance comparison is claimed by this extraction. The previously recorded measurements remain in #4119.
AI Usage
Codex was used for the extraction, dependency review, standalone documentation adjustments, and local verification listed above. This PR is a draft for further review.