119 lines
5.2 KiB
Markdown
119 lines
5.2 KiB
Markdown
# Modern Runtime Slice D — Unified Residency Report
|
||
|
||
**Date:** 2026-07-24
|
||
**Exact source/binary:** `1853a57c12ee16f8d1d2c41cca60851a4bd89de6`
|
||
**Configuration:** Release, physical local AMD display, 2560 × 1440
|
||
**Result:** PASS
|
||
|
||
## Scope
|
||
|
||
Slice D did not replace the renderer's specialized physical caches or alter
|
||
visual quality. It placed their limits and exact occupancy behind one typed
|
||
policy/diagnostic ledger, added generation-safe logical identity and leases,
|
||
bounded the previously unbounded animation and retained-alpha-scratch owners,
|
||
and made decoded audio part of the same accounting model.
|
||
|
||
The final gate exercised the exact D4 binary through:
|
||
|
||
- capped Caul → Sawato → Rynthid → Aerlinthe → Sawato → Holtburg → Caul →
|
||
Sawato → Caul;
|
||
- the same nine-stop route uncapped;
|
||
- pinned dense Arwic uncapped;
|
||
- fixed-camera screenshots at every canonical checkpoint;
|
||
- graceful character logoff and transport disconnect.
|
||
|
||
Raw JSON, CSV, PNG, trace, and frame-history artifacts remain in the ignored
|
||
local `logs/` tree:
|
||
|
||
- `connected-r6-soak-20260724-164203.*`
|
||
- `connected-r6-soak-20260724-165143.*`
|
||
- `connected-dense-town-20260724-170034.*`
|
||
|
||
## Connected results
|
||
|
||
| Route | Result | Elapsed | Failures | Warnings | Graceful |
|
||
|---|---:|---:|---:|---:|---:|
|
||
| Capped nine-stop | PASS | 514.308 s | 0 | 9 | yes |
|
||
| Uncapped nine-stop | PASS | 508.793 s | 0 | 11 | yes |
|
||
| Dense Arwic uncapped | PASS | 67.570 s | 0 | 1 | yes |
|
||
|
||
Warnings were expected authoritative population changes, known VFX
|
||
diagnostics, and empty world-edge landblocks. No warning represented a
|
||
residency, reveal-readiness, rendering, or shutdown failure.
|
||
|
||
### Frame cost
|
||
|
||
The values below are turn-window p95 CPU/GPU milliseconds. Lower means more
|
||
frame time remains for other work.
|
||
|
||
| Destination | Capped CPU / GPU | Uncapped CPU / GPU |
|
||
|---|---:|---:|
|
||
| Caul first | 8.0 / 3.6 | 7.5 / 3.2 |
|
||
| Sawato first | 4.6 / 1.7 | 2.1 / 1.3 |
|
||
| Rynthid | 4.6 / 1.8 | 2.4 / 1.5 |
|
||
| Aerlinthe | 4.6 / 2.2 | 2.1 / 1.4 |
|
||
| Sawato revisit | 4.6 / 1.8 | 1.6 / 0.9 |
|
||
| Holtburg | 4.7 / 2.1 | 3.7 / 2.1 |
|
||
| Caul return | 5.4 / 3.1 | 6.0 / 3.2 |
|
||
| Sawato plateau | 4.6 / 1.3 | 1.7 / 1.0 |
|
||
| Caul plateau | 8.4 / 3.4 | 7.0 / 3.3 |
|
||
|
||
Pinned dense Arwic, with 15,530 entities and 111 animations, measured
|
||
5.4 ms CPU p95 and 3.0 ms GPU p95 while turning. These measurements confirm
|
||
that the connected route is normally CPU-limited rather than GPU-limited.
|
||
They are evidence for the explicit Slice F/G approval decision, not permission
|
||
to begin that deferred ECS work.
|
||
|
||
## Residency plateau
|
||
|
||
The capped run's aggregate ledger is summarized below. CPU excludes the
|
||
prepared package's clean memory-mapped address space; GPU is cache-attributed
|
||
physical residence, not every framebuffer/shader/UI allocation tracked by the
|
||
independent process-wide GPU tracker.
|
||
|
||
| Checkpoint | Committed CPU | Physical GPU | Animations | Alpha scratch | Retiring |
|
||
|---|---:|---:|---:|---:|---:|
|
||
| Caul first | 36.8 MiB | 185.1 MiB | 26 | 8.10 MiB | 0 |
|
||
| Sawato first | 39.4 MiB | 247.1 MiB | 33 | 1.87 MiB | 0 |
|
||
| Rynthid | 23.3 MiB | 277.2 MiB | 39 | 2.62 MiB | 0 |
|
||
| Aerlinthe | 39.6 MiB | 277.3 MiB | 43 | 3.97 MiB | 0 |
|
||
| Sawato revisit | 30.3 MiB | 277.3 MiB | 43 | 3.97 MiB | 0 |
|
||
| Holtburg | 39.4 MiB | 347.0 MiB | 50 | 4.70 MiB | 0 |
|
||
| Caul return | 50.3 MiB | 355.0 MiB | 51 | 8.54 MiB | 0 |
|
||
| Sawato plateau | 36.1 MiB | 363.0 MiB | 55 | 2.28 MiB | 0 |
|
||
| Caul plateau | 38.5 MiB | 335.1 MiB | 55 | 8.53 MiB | 0 |
|
||
|
||
The third Caul visit used less cache-attributed CPU and GPU residence than the
|
||
second. Parsed-animation residence stopped at 55 entries, retained alpha
|
||
scratch remained below its 16 MiB aggregate budget, staged and retiring bytes
|
||
were zero at every canonical checkpoint, and all reported owners stayed within
|
||
their configured limits.
|
||
|
||
Process working set and private bytes are intentionally not substituted for
|
||
these ownership facts. The 27.53 GiB prepared package is memory mapped; Windows
|
||
counts touched clean file-backed pages in working set even though they are
|
||
discardable and are not committed cache ownership. The uncapped run ended at
|
||
1,776.5 MiB working set and 1,543.8 MiB private bytes after warming all nine
|
||
destinations. Slice E still owns the remaining portal publication/retirement
|
||
allocation and frame-transaction work.
|
||
|
||
## Automated gates
|
||
|
||
- Typed transition, cancellation, failure, owner-reuse, and stale-generation
|
||
conformance tests pass.
|
||
- Every bounded domain has deterministic forced-pressure coverage.
|
||
- Physical cache tests prove eviction and fence-delayed release.
|
||
- All-domain teardown converges to zero reported charge.
|
||
- Release build passes.
|
||
- Complete Release suite passes: 8,111 tests, 5 intentional skips.
|
||
- Connected fixed-camera screenshots passed the existing harness comparisons;
|
||
Slice D introduced no visible-frame change requiring a new subjective gate.
|
||
|
||
## Conclusion
|
||
|
||
Slice D's policy and acceptance gates are complete. Runtime cache memory is now
|
||
finite, attributable, generation-safe, and pressure-tested without reducing
|
||
view distance, particle distance, texture quality, or retail presentation.
|
||
Slice E is the next approved step: spread portal publication and retirement
|
||
over explicit per-frame cost budgets while keeping retired objects immediately
|
||
inactive and destination reveal correctness exact.
|