feat(streaming): enforce typed completion queues
Replace the flat deferred list, priority scan, unload bypass, and count-only execution cap with exact destination/control/unload/Near/Far FIFOs behind one typed frame meter. Price worker results before adoption, retain exact retry identity, reject stale generations without payload retention, and publish queue pressure through lifecycle diagnostics. Tests: dotnet build AcDream.slnx -c Release --no-restore; dotnet test AcDream.slnx -c Release --no-restore (8138 passed, 5 skipped)
This commit is contained in:
parent
ac45cb1bd7
commit
b8f6317fe1
15 changed files with 1261 additions and 336 deletions
|
|
@ -712,11 +712,16 @@ partially hydrated cell membership or shell placement to the renderer.
|
|||
update-thread streaming cost. `StreamingWorkMeter` owns the frame-scoped
|
||||
admission ledger; `LandblockStreamResultCost` assigns deterministic charges to
|
||||
immutable completion arrays and logical retained entries without claiming to
|
||||
measure CLR allocator overhead. During Slice E1 the ledger is observational:
|
||||
the existing scheduler still executes its accepted work, while lifecycle
|
||||
artifacts record would-yield limits, elapsed work, retained backlog bytes/age,
|
||||
and pending publication/retirement counts. Enforcement belongs to the explicit
|
||||
Slice E scheduler, not to presentation owners or the worker.
|
||||
measure CLR allocator overhead. `LandblockStreamer` exposes one allocation-free
|
||||
single-consumer peek/read source so the update thread prices a result before
|
||||
adopting it. `StreamingController` is the sole scheduler: it admits through the
|
||||
typed meter into reusable destination/control/unload/Near/Far FIFOs, preserves
|
||||
exact reference identity and retry position, rejects stale generations, and
|
||||
executes every class through the same meter. Priority changes order, never the
|
||||
budget. Lifecycle artifacts publish worker and per-class backlog, retained
|
||||
bytes/age, yields, oversizes, overruns, and pending publication/retirement
|
||||
facts. Publication remains transaction-atomic until Slice E4; retirement
|
||||
quiesce/cursors belong to E3.
|
||||
|
||||
### World-reveal readiness ownership
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue