ci(perf): calibrate HTTPS gates on ratios; seed history; prove #307 detection - #314
Merged
Merged
Conversation
…etection The gates from #309 failed every run (7/7). The absolute keep-alive and 1 MiB backstops came from a Ryzen 5600X and an EPYC 9V45, and healthy code on the EPYC 7763 runner lands under them (75k vs 110k keep-alive/s, 1.9 vs 2.5 GB/s). History is only recorded after a pass, so it never filled and the same-CPU check never switched on. - Gate on https/http ratios measured in the same run: churn, keep-alive, 1 MiB. They hold within 0.11-0.13 / 0.55-0.66 / 0.34-0.52 across four CPU models while the absolute numbers move ~1.8x. - Absolute backstops drop to ~60% of the slowest healthy runner: they now catch only breakage that is wrong on any hardware. - Seed benchmarks/https_gates.json with the 7 CI runs and one local run, all on healthy trees, so the EPYC 7763 same-CPU check engages on its next run. - https_perf_gates.sh: the plaintext 1 MiB number had no MB/s fallback. Regression check (Ryzen 5600X, #307's TCP_QUICKACK re-arm disabled): tls_rtt_p50_ms 0.083 -> 43.0, churn ratio 0.118 -> 0.052; the gate fails RTT, churn ratio and absolute churn. All 7 recorded CI runs pass. test_https_gates_eval.py replays both, the recorded history, and the same-CPU path. ROADMAP v3.9: (a) status updated; (c) corrected, the #294 premise correction itself was wrong (cwist_app_listen does use the shepherds; measured), #294 closed as completed; (d) done (#310).
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.
The HTTPS gates from #309 have failed all 7 runs so far, on healthy code. This PR recalibrates them and shows they still catch the regression they were written for (#307).
Why they failed
Changes
https_perf_gates.sh: the plaintext 1 MiB measurement now has the MB/s fallback that the HTTPS one already had.scripts/ci/test_https_gates_eval.py, picked up by the existingtest_*.pydiscovery.cwist_app_listenbypasses the handshake shepherds. Measured, it uses them. [perf] Evaluate raising HTTPS handshake shard default #294 is closed as completed.Regression check (Ryzen 5600X, #307's QUICKACK re-arm disabled)
The churn absolute backstop alone would not catch this on a fast CPU. The test covers that case with the ratio gate.
All 7 recorded CI runs now pass 10/10.
python3 -m unittest discover -s scripts/ci -p 'test_*.py'passes: 65 tests, 6 of them new.