perf(content): close prepared asset cutover
This commit is contained in:
parent
b1ad4b7c0a
commit
a564c4b782
11 changed files with 428 additions and 66 deletions
|
|
@ -1562,9 +1562,10 @@ 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 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:
|
||||
> below): MP1b pak/bake and MP1c production cutover are now complete. The
|
||||
> remaining parked items are MP-Alloc hard sites; typed residency and
|
||||
> cost-budgeted streaming continue as Slices D/E in the modern-runtime plan.
|
||||
> 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,
|
||||
> or throughput redesign. It is corrective ownership/reclamation work for a
|
||||
|
|
@ -1588,10 +1589,15 @@ port in any phase — no separate listing here.
|
|||
> 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
|
||||
> and thousands of invalid typed-Setup probes as MP1c's before-state. 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.
|
||||
> **Slice C completed 2026-07-24:** production streaming consumes the validated
|
||||
> bake-tool-3 package, all physical connected and user-visual gates passed,
|
||||
> process allocation fell 41.8–61.9%, GC pause time fell 48.4–54.1%, and
|
||||
> invalid typed-Setup exceptions fell to zero. [Cutover
|
||||
> report](../research/2026-07-24-slice-c-prepared-asset-cutover-report.md).
|
||||
|
||||
**Spec:** `docs/superpowers/specs/2026-07-05-modern-pipeline-design.md` (the
|
||||
umbrella design — read it first). **Goal:** smoothness first (no frame over
|
||||
|
|
@ -1616,7 +1622,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 20–87ms → 6–10ms, alloc spikes (30–75MB single-frame) eliminated, gen2 GC 5–11/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 | **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 |
|
||||
| MP1c | Streaming cutover to pak + hitch gate | ✅ **SHIPPED 2026-07-24** — typed package-only production source, explicit Setup probes, non-allocating Portal-first lookup, exact translucency metadata, and ordered teardown; capped/uncapped/dense physical routes + user visual gate pass. Uncapped CPU p99 7.825→6.496 ms, GPU p99 3.406→2.706 ms, portal frame max 202.9→39.9 MiB, process allocation −41.8%, zero invalid Setup probes. [Report](../research/2026-07-24-slice-c-prepared-asset-cutover-report.md) |
|
||||
| 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 |
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue