feat(ci): add opt-in raw and corrected wrk histograms - #87
Merged
Conversation
Collaborator
Author
|
Head f4c0845 CI completed:8success/1skipped/1neutral, no failures. Independently read back the exact head. The matched-rate follow-up is recorded at #25 (comment). At target300kRPS, matched within-pair achieved rates (<0.003% difference), separate client CPUs improved planned-send P99.999 by median31.2% across4/4pairs. This does not change this PR’s scope: opt-in instrumentation only, not runtime defaults or an issue-closure claim. Raw/uncorrected and planned-start/corrected metrics must remain explicitly labeled. |
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.
Summary
Related to #25; diagnostic tooling only, not a runtime fix or issue-closure claim.
Add an opt-in wrk4.2.0 source generator and sparse JSON histogram reporter. Existing wrk reports/Lua callbacks receive the histogram after
stats_correct; this tool preserves both recorded raw bins and corrected bins in the same run. Reporting brackets correction after worker joins and after runtime is frozen. Normal CI benchmarks and CWIST source/defaults are unchanged.scripts/ci/test_*.pydiscovery automatically runs the offline checks. No workflow permissions, dependencies or workload flags changed.Verification
-O. Native compiler checks included.Experiment boundary
Same run-paired CPU-placement screen as documented in #25, pinned server
65632aed0a30e8aabe1519aa9b706e19685c2b4b(not latest dev), two server processes/four worker reactors each. Only wrk CPU affinity differed between shared and separated conditions. Source/build identities and raw logs retained.Within-pair median separated/shared ratio: recorded raw nearest-rank P99.999 2.135, corrected nearest-rank P99.999 2.063, throughput 1.424. Raw-tail wins 0/4. Therefore the prior direction is not solely a histogram-correction artifact; this does not isolate the effect at equal offered load or prove a production SLO. Do not compare absolute latency values across experiment runs.
Raw means wrk-recorded observations, not an open-loop arrival distribution. Keep errors, gaps, pipeline settings, percentile rank conventions and post-run export overhead explicit. No cache activation, thread-default change, or benchmark result publication workflow change is proposed.