Skip to content

ci(perf): calibrate HTTPS gates on ratios; seed history; prove #307 detection - #314

Merged
gg582 merged 1 commit into
devfrom
ci/https-gates-calibration
Oct 5, 2026
Merged

gg582 merged 1 commit into
devfrom
ci/https-gates-calibration

Conversation

@gg582

@gg582 gg582 commented Oct 5, 2026

Copy link
Copy Markdown
Member

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

  • The absolute keep-alive and 1 MiB backstops were set from a Ryzen 5600X and an EPYC 9V45.
  • On the EPYC 7763 runner, healthy code measures 75k keep-alive req/s against a 110k backstop, and 1.9 GB/s against 2.5 GB/s.
  • History is only written after a pass, so it stayed empty and the same-CPU comparison never turned on.

Changes

  • Ratio gates. HTTPS/HTTP ratios for churn, keep-alive and 1 MiB, with both sides measured in the same run. Across four CPU models the absolute numbers move about 1.8x, but the ratios stay within 0.11–0.13, 0.55–0.66 and 0.34–0.52.
  • Absolute backstops lowered to about 60% of the slowest healthy runner. They now only catch breakage that would be wrong on any hardware.
  • History seeded with the 7 recorded CI runs and one local run, all on healthy trees. The EPYC 7763 same-CPU check turns on at its next run.
  • https_perf_gates.sh: the plaintext 1 MiB measurement now has the MB/s fallback that the HTTPS one already had.
  • New test scripts/ci/test_https_gates_eval.py, picked up by the existing test_*.py discovery.
  • ROADMAP v3.9 status:

Regression check (Ryzen 5600X, #307's QUICKACK re-arm disabled)

healthy #307 disabled gate
tls_rtt_p50_ms 0.083 43.0 FAIL
churn ratio 0.118 0.052 FAIL
https_churn_rps 1665 677 FAIL
keep-alive / 1 MiB unaffected pass

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.

…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).
@gg582
gg582 merged commit 5be3c76 into dev Oct 5, 2026
15 checks passed
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.

1 participant