docs(perf): commit physical Slice A baselines

Capture the authoritative capped, uncapped, and dense-Arwic routes on the physical AMD display path. Preserve the portal allocation, exception-storm, and repeated-Caul memory failures as MP1c's before-state while unblocking the prepared-asset cutover.
This commit is contained in:
Erik 2026-07-24 14:41:50 +02:00
parent 49f3a48ee6
commit 2421d09f5d
6 changed files with 335 additions and 19 deletions

View file

@ -1562,8 +1562,8 @@ port in any phase — no separate listing here.
> remains DEFERRED**: ECS is the *throughput* lever (raise avg FPS ~230→300), a
> DIFFERENT goal from steadiness — revisit ONLY if the user wants a higher raw FPS
> number and accepts the rewrite risk. Rust rejected. Parked (resume from the table
> below): MP1b pak/bake is now complete; MP1c remains gated on corrected
> physical-local baselines. The remaining parked items are
> below): MP1b pak/bake is now complete and the corrected physical-local
> baselines have landed, so MP1c is active. The remaining parked items are
> MP-Alloc hard sites and MP1c. MP2 has shipped. Full rationale:
> `project_mp_track_findings.md`.
> The 2026-07-18 portal/resource-lifetime repair does not resume MP's ECS, pak,
@ -1582,11 +1582,14 @@ port in any phase — no separate listing here.
> unifies the unfinished MP pak/render-world work with future Track LH, preserves
> retail-shaped simulation and the N.5 renderer, and reorders execution around
> prepared content and cost-budgeted streaming before render-ECS throughput.
> **Execution update 2026-07-24:** Slice A's corrected tooling and diagnostic
> RDP captures have landed. The committed evidence includes capped/uncapped
> nine-stop routes, dense Arwic, portal windows, observer-effect measurement,
> binary provenance, and contention stacks. The physical-local AMD-display gate
> remains open and blocks Slice C. Slice B EnvCell dedup is complete; its
> **Execution update 2026-07-24:** Slice A's corrected tooling, diagnostic RDP
> captures, and authoritative physical-local captures have landed. The
> committed evidence includes capped/uncapped nine-stop routes, dense Arwic,
> portal windows, observer-effect measurement, binary provenance, and
> contention stacks. The physical runs confirm fast steady rendering but also
> preserve repeated-portal memory plateau failures, ~200 MiB allocation frames,
> and thousands of invalid typed-Setup probes as MP1c's before-state. Slice C
> is unblocked and active. Slice B EnvCell dedup is complete; its
> [full-bake report](../research/2026-07-24-slice-b-full-bake-report.md)
> records the 42.6× result and corrected geometry-identity collision.
@ -1613,7 +1616,7 @@ hitch and follows.
| MP1b | Pak format + `acdream-bake` CLI + mmap `PakReader` + equivalence/full-scale gate | ✅ **SHIPPED 2026-07-24** — 729,888 EnvCell keys → 17,117 unique geometries + 712,771 aliases (42.6×), 751,141 total keys / 38,370 physical blobs, zero failures, 28,192.4 MiB, 81.4 s validated atomic publish; full-DAT gate also corrected a real collision in WB's legacy geometry hash. [Report](../research/2026-07-24-slice-b-full-bake-report.md) |
| **MP-Alloc (safe batch)** | Reuse per-frame buffers: anim pose, particle draw-list, interior partition, animatedIds/drawableCells sets | ✅ SHIPPED + USER-GATED 2026-07-05 — dense-town frame-time spikes 2087ms → 610ms, alloc spikes (3075MB single-frame) eliminated, gen2 GC 511/window → ~0; user confirms FPS steady. 4 commits `b8c05e2b`..`91afea24` |
| MP-Alloc (hard sites) | EnvCell settled-camera rebuild gate + physics `Transition` pooling — the residual steady ~1.6MB/frame | ⚪ OPTIONAL follow-up — would lower the median too, but the wild-swing complaint is already resolved; each needs its own careful gate (batch correctness / physics faithfulness) |
| MP1c | Streaming cutover to pak + hitch gate | ⏸ blocked on the physical-local corrected Slice A baseline; Slice B package foundation is complete |
| MP1c | Streaming cutover to pak + hitch gate | **ACTIVE 2026-07-24** — physical-local Slice A gate committed; baseline: uncapped CPU p50/p95/p99 1.520/5.694/7.825 ms, GPU 0.897/3.239/3.406 ms, portal allocation max 212.7 MiB, repeated-Caul working-set growth 295.1 MiB. Slice B package foundation is complete |
| MP2 | Retail particle distance/cell-view degradation: DAT-authored range, exact infinite/finite off-view update branches, emitter-first render scan, user-requested 2× default range | ✅ SHIPPED 2026-07-17 — Aerlinthe hotspot `0x32000223` resolves to retail 64m and defaults to 128m; landscape/entity streaming distance unchanged |
| MP3 | Arch ECS render world + delta submission (the 300-FPS lever) | ⚪ — note: does NOT fix the steady-state GC churn (that's MP-Alloc); MP3 is the draw-submission throughput lever |
| MP4 | Zero-alloc frame loop + flat physics data (residual, post-MP-Alloc) | ⚪ hard-queued behind M1.5 #137 |

View file

@ -2,8 +2,8 @@
**Date:** 2026-07-24
**Status:** Slice A tooling and diagnostic RDP baselines landed; Slice B
complete. The physical-local Slice A gate still blocks Slice C.
**Status:** Slice A complete on the physical reference display; Slice B
complete. Slice C is unblocked and active.
**Scope:** Reconcile and sequence the existing Modern Pipeline (`MP`) and
Linux/headless (`LH`) tracks using the 2026-07-24 connected performance audit.
@ -577,8 +577,14 @@ and uncapped nine-stop RDP routes, a pinned dense-Arwic RDP sample, observer
effect, portal windows, and contention stacks are committed in
[`../research/2026-07-24-slice-a-rdp-baselines.md`](../research/2026-07-24-slice-a-rdp-baselines.md)
and its machine-readable companion. They prove the tooling is usable but are
diagnostic-only. The physical-local AMD-display repetitions remain required,
so Slice C is still blocked. Slice B was baseline-independent and is complete.
diagnostic-only. The authoritative capped/uncapped nine-stop and pinned
dense-Arwic repetitions are committed in
[`../research/2026-07-24-slice-a-physical-local-baselines.md`](../research/2026-07-24-slice-a-physical-local-baselines.md)
and its machine-readable companion. All routes completed and disconnected
gracefully. They also preserve the two repeated-portal memory plateau failures,
~200 MiB portal allocation frames, and typed-Setup exception storm as Slice C's
before-state instead of weakening the gates. Slice A and Slice B are complete;
Slice C is unblocked.
### Slice B — Finish MP1b EnvCell dedup and full bake
@ -1123,11 +1129,13 @@ an improvement" carries the same evidence burden as a regression claim.
## 14. Current execution point
Slice A's tooling and diagnostic RDP evidence are complete, and Slice B's
prepared-content bake is complete. The next implementation is Slice C, but its
physical-local prerequisite remains open. Do not start Slice C until the
capped/uncapped nine-stop and pinned dense-Arwic routes have been repeated on
the physical local AMD display path and committed.
Slice A's tooling and authoritative physical-local evidence are complete, and
Slice B's prepared-content bake is complete. Slice C is active. Its comparison
baseline is the committed physical-local capture at
`49f3a48ee63b82d00731b0f91497930925279c86`: uncapped CPU p50/p95/p99
1.520/5.694/7.825 ms, GPU p50/p95/p99 0.897/3.239/3.406 ms, portal allocation
max 212.7 MiB, process allocation mean 50.0 MB/s, and a repeated-Caul working
set plateau failure of 295.1 MiB.
The intended order is therefore: