wip(assembler): round S11 -- bounded spawn apply budget: in-game full set 7.1 s -> 6.0 s
Startup apply mode on by default (12 meshes / 14 ms per frame, ends when the initial set and walkable ring are ready, 30 s cap); normal play keeps the authored budget. Backlog peak 252 -> 10, LOD8 apply wait 1.1 s -> 4 ms. Ring 0.49 s, LOD0 1.40 s, 40 m/s ring 75/75. Remaining floor: frame-paced admission (~8.3 submits/frame, 8 running workers max). No geometry change. Report: Standalone/Research/WorldAssemblerM3/Round15. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MmSoF64BbRFmk9C3p1VsBJ
This commit is contained in:
1 parent
b90d63d0f7
commit
dd9bfd3217
6 files changed
+240
-7
No files matched your search
@@ -1679,6 +1679,34 @@ coverage gates still pass at their existing tolerances. BuildHost actor startup,
|
||||
matrix, W1/W8/W12 Standalone hashes, the 40 m/s support-ring trace and the S10/S9 captures are
|
||||
recorded in [`Standalone/Research/WorldAssemblerM3/Round14/REPORT.md`](Standalone/Research/WorldAssemblerM3/Round14/REPORT.md).
|
||||
|
||||
### 8.32 Bounded spawn-phase mesh applies — World Assembler S11 / M3 Round 15
|
||||
|
||||
The shared `AVoxelWorld::ProcessPendingChunks` startup budget now defaults on for the initial desired
|
||||
set: up to 12 visible mesh applies or 14 ms in one frame, with a 30 second ceiling. It ends as soon
|
||||
as the first desired set and stationary walkable ring are ready, the desired epoch changes, an
|
||||
explicit per-step apply override is supplied, or the ceiling expires. Normal play uses the authored
|
||||
`MaxMeshAppliesPerFrame` and `MaxMeshApplyMilliseconds` values. Set
|
||||
`voxel.StreamingStartupApplyBoost=0` for the matched authored-budget control. `startup_apply_config`
|
||||
records the actor-read CVar and both budgets; `startup_apply_budget` records when the bounded phase
|
||||
starts and ends.
|
||||
|
||||
On the matched 25 cm SurfaceWorld trace, both fresh processes handled 2,578 initial tiles. With the
|
||||
authored 4-mesh/2 ms budget, readiness was 7.118 s, the nine-tile walkable ring was ready at 0.495 s,
|
||||
and full LOD0 at 1.444 s. The four-mesh limit hit 305 of 399 apply frames; result backlog peaked at
|
||||
252/256 and result-wait p95/max was 847/1,119 ms. The last LOD8 worker ended at 6.068 s, but its
|
||||
result applied at 7.182 s. With the shared startup budget enabled, readiness was 5.960 s, the ring
|
||||
was ready at 0.486 s, and full LOD0 at 1.403 s. No apply-count frame hit its limit; backlog peaked
|
||||
at 10 and result-wait p95/max fell to 16.6/19.3 ms. The last LOD8 worker/apply times were 6.015/6.019 s.
|
||||
|
||||
The remaining worker-generation span is frame-paced: 2,578 requests arrived over 310 submission
|
||||
passes (8.32 per pass) in 5.58 s. The trace integrates 4.8 busy workers out of 10, while sampled
|
||||
active task guards averaged 9.9/10 and sampled running workers peaked at 8. The LOD4 group used the
|
||||
most worker time (6.590 s) but finished at 4.276 s; the final LOD8 group applied at 6.019 s. The 60
|
||||
initial RMC body updates had an 18.4 ms p95 submit-to-body-update interval, and the walkable ring was
|
||||
ready well before that far-LOD tail. Geometry and collision arithmetic do not change, so recipe
|
||||
versions stay unchanged.
|
||||
See [`Standalone/Research/WorldAssemblerM3/Round15/REPORT.md`](Standalone/Research/WorldAssemblerM3/Round15/REPORT.md).
|
||||
|
||||
## 9. Multiplayer model (listen-server first, dedicated-friendly)
|
||||
|
||||
> **Status: transport is DESIGN ONLY — nothing is networked in-tree yet** (no `Replicated`/`HasAuthority`/RPCs; a
|
||||
|
||||
Reference in new issue
Block a user