docs(perf #N6.1): apply final-review fixes — spec, baseline doc, issue #55
Final code review of slice 1 flagged one Important issue (the spec's "zero cost when off" claim for the surface-dump path is technically violated — _uploadMetadata always writes one dict entry per upload regardless of env var) plus minor doc/consistency gaps. Applied: 1. Spec §5 "Cost when off": dropped the "Zero" claim; replaced with "Negligible — one Dictionary write per upload (~30-50 KB at Holtburg) plus a hash-table write per upload. Expensive work (file I/O, histogram construction) is still env-gated." This matches reality. 2. Baseline doc §5: rewrote from "Raw logs (scratch, can be deleted)" referencing files that were never preserved in this worktree, to "Reproducing the measurements" with the actual PowerShell launch commands. Honest about the raw logs not being kept; the captured medians in section 2 are the canonical record. 3. New issue #55 filed in docs/ISSUES.md — static-entity slow path reports ~1.45M meshMissing/5s at r4 standstill, drops to ~0 when walking. LOW severity (no visible regression), hypothesis points at a "permanently-missing entity gets re-classified every frame" pattern that Tier 1 cache doesn't cover. 4. Roadmap shipped table: renamed "N.6.1" row to "N.6 slice 1" to match every other artifact's naming. Search-discoverability fix. None of these change the slice's conclusion or next-phase recommendation (C.1.5 first, then reduced-scope slice 2). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
76ca3ffca8
commit
41981c4d74
4 changed files with 60 additions and 11 deletions
|
|
@ -196,7 +196,7 @@ Plus rollups at the end:
|
|||
|
||||
### Cost when off
|
||||
|
||||
Zero — gated by the env-var check. The dump method is only called from a guarded `if` in `GameWindow.cs`.
|
||||
Negligible — one `Dictionary<uint, …>` write per `UploadRgba8`/`UploadRgba8AsLayer1Array` call (the `_uploadMetadata` insertion is unconditional so the dump path doesn't have to query GL state when it does fire). At Holtburg with 760 textures that's ~30–50 KB of process memory and one hash-table write per upload — invisible at runtime, no GC pressure. The expensive work (file I/O, histogram construction) is gated by the env-var check inside `TickSurfaceHistogramDumpIfEnabled` and only runs when `ACDREAM_DUMP_SURFACES=1`.
|
||||
|
||||
---
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue