eval(fig9): whole-sketch F2 + unify coordinated sampling to one ε-floor law - #506
Merged
Merged
Conversation
The query-serving model (sample by whole-sketch L2 so any unknown point query stays within ε). mvp-workload-fig9-f2.yaml declares functional: f2 (no key); fig9_f2_coordinated.sh drives EQUAL-rate, concentration-skewed edges (c=16/4/1) so F2/rate=c and p_i ∝ √c (≈ 4:2:1), via the hot-reload path (no seed). Edges run -monitor-functional=f2 and auto-learn the functional from the controller config. Requires the F2-backend image (ASAPQuery-backend feat/monitor-f2-live = main + #377 + #379 + functional round-trip) and the F2 edge image (feat/otel-app-f2-mode). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…-sketch law) Validated live: all 3 edges report whole-sketch F2_i under identity (agg_id,""), 0 unconfigured, 0 alert, auto-learn f2 + hot-reload. Granted p = 0.0102/0.0026/ 0.0007 for rate 16/64/256 per ts. Equal per-window F2 makes all edges trip the shared slack together; differentiation is by rate. Finding: p matches the ε-floor 1/(1+ε²·rate) exactly, NOT √(F2/rate). This is structural, not tuning: F2=Σf²≥Σf=rate always, so τ (>global F2, to avoid alerting) forces a variance budget (ε·τ)² too large for the √(F2/rate) allocation to bind — the ε-floor (CDM-threshold coupling, keeping each edge's L2 noise ≤ε) always wins. So the whole-sketch per-edge law is p_i=1/(1+ε²·rate_i); F2 is the monitored global quantity (threshold), identity is agg_id (no key). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…obey it Rewrites §Fig 9 to the unified result: per-edge sampling is the single whole-sketch ε-floor p=1/(1+ε²·rate) for EVERY monitor type. Re-ran both on the unified coordinator: cms_point collapses from the old √rate (0.0010/0.0022/0.0049) to the ε-floor (0.0001/0.0003/0.0013); F2 unchanged (0.0102/0.0026/0.0007, was already at the floor). All six points lie on one 1/(1+ε²·rate) curve (fig9_unified_sampling.png). The √(f/rate) law was the exact-count artifact, retired in ASAPQuery-backend#381. Requires #381 (backend unify) + #505 (F2 edge). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.
Extends #503 (base =
eval/8node-cluster-figures) with the whole-sketch F2 path and the unified Fig 9.mvp-workload-fig9-f2.yaml(functional: f2, no key) +fig9_f2_coordinated.sh(equal-F2 / rate-differentiated, hot-reload).p_i = 1/(1+ε²·rate_i)(whole-sketch ε-floor) for both cms_point and F2. Re-ran both on the unified coordinator — cms_point collapses from the old √rate to the ε-floor; F2 unchanged. All six points on one curve (figs/fig9_unified_sampling.png).Depends on ASAPQuery-backend#381 (F2 round-trip + sampling unification) and #505 (F2 edge mode) in the deployed images. Supersedes the cms_point √rate framing previously in #503.
🤖 Generated with Claude Code