docs: Campaign FW - FW3.4a clears the perf stop rule (-3.2% p50 vs baseline)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Erik 2026-08-30 17:09:35 +02:00
parent 1da178d9ba
commit 806f87ab79

View file

@ -446,6 +446,19 @@ data). FW3.4a fixes them (single walk pass; prepare-once/draw-ranges
pair re-measures against the SAME baseline; the owner decision only pair re-measures against the SAME baseline; the owner decision only
triggers if it still exceeds 20% after the known fixes. triggers if it still exceeds 20% after the known fixes.
**FW3.4a RESULT (2026-08-30, @`1da178d9`): THE STOP RULE CLEARS.**
Post-refactor dense Arwic uncapped vs the SAME baseline: CPU p50
23.6 -> 22.9 ms (-3.2%), p95 36.3 -> 34.7 ms (-4.5%) - the walk path
is now FASTER than the old static path. The refactor's own crash
round (VK_ERROR_DEVICE_LOST) taught the binding contract: leaf draws
and alpha flushes rebind set-0 between ranges, so DrawOrderedRange
rebinds per call; only the ring WRITES are once-per-frame. FOLLOW-UP
FILED: alloc p50 still ~1.5 MB/frame on the walk path (baseline
133 KB) - the per-frame driver/leaf/populator object graph in
DrawWalkDrivenStatics; hoist to renderer fields with per-frame
Reset (FW3.4 closeout or FW6 polish; CPU-neutral today, GC-hitch
hygiene).
- **FW3.4 — perf checkpoint + gates.** BASELINE CORRECTION: the - **FW3.4 — perf checkpoint + gates.** BASELINE CORRECTION: the
519.7 fps / 1.869 / 1.096 ms numbers are the Aerlinthe 519.7 fps / 1.869 / 1.096 ms numbers are the Aerlinthe
ordinary-production profile, NOT dense Arwic. Before the cutover ordinary-production profile, NOT dense Arwic. Before the cutover