Repository navigation
Allow transactional render passes with HD textures and opted-in local netplay views - #727
Conversation
mstan
left a comment
There was a problem hiding this comment.
Reviewed head 1cd67fc.
The stated render-pass/HD/local-view compatibility is meaningful, and simulation correctness must remain unconditional inside an enabled enhancement. This draft is much broader than that contract: it also adds production input replay/benchmark controls and host-span tracing and changes host time, scheduling, PGXP, rewind and render-thread behavior. Please isolate the render-pass permission/transaction change from that independent tooling and performance work, or identify a minimal explicit dependency stack. Preserve canonical shared state and rollback-resimulation refusal; qualification must compare the shared digest before/after an actual local-view pass with HD authority, including abort/failure and a disabled/nonparticipating peer. The synthetic GL fixture is useful but does not clear the source ownership and scope questions. Keeping this as draft, with TechnicallyComputers assigned for the engine netplay/local-view policy. Tracking: beads-8zz2.
Co-Authored-By: Codex <noreply@openai.com>
1cd67fc to
ce40165
Compare
mstan
left a comment
There was a problem hiding this comment.
Rebased onto frozen master, preserving current bounded sleeper/FLS code and projective transaction/failure guards, and pushed ce40165. Added the missing emulation-side render-pass flag double to the standalone HD GL fixture. Its existing four-wave timer test now has a 45-second CTest envelope consistent with four internal ten-second watchdogs; the internal watchdogs remain unchanged.
The combined 21-test native gate and real GL scale/thread/quality matrix pass; the HD fixture also passes 209/208 checks and native reference 19 after the preload/STP expectation fixes on their owning branches. A generic refusal test with no configured pass is not positive HD transactional-pass qualification. The draft still needs its consuming-title positive pass/opted-in netplay contract and matched built-performance acceptance before promotion.
Carry only the render transaction permission and focused sandbox/GL checks; title-level qualification remains open. Co-Authored-By: GPT-6.1-Sol <noreply@openai.com>
Co-Authored-By: GPT-6.1-Sol <noreply@openai.com>
Merge current upstream and retain only the focused HD permission, local-view scope, and transaction qualification changes. Independent replay, scheduling, PGXP, and tracing work belongs in separate topics. Co-Authored-By: GPT-6.1-Sol <noreply@openai.com>
Co-Authored-By: GPT-6.1-Sol <noreply@openai.com>
Co-Authored-By: GPT-6.1-Sol <noreply@openai.com>
mstan
left a comment
There was a problem hiding this comment.
The scope trim resolves the earlier broad-draft concern. I added and pushed 13db1e7: the actual texture-pack fixture now draws decoded HD replacements inside a temporal pass, verifies red/blue detail in its retained subframe, and checks canonical display/CPU/GPU restoration for kept and discarded passes. Hidden native GL runs pass 231/231 (full VRAM), 217/217 (window compatibility), and 19/19 (native baseline).
The combined Release runtime at bb0d6de builds and passes all 16 focused tests. I also read the linked R4 receipt: its peer digest evidence is useful; its zero applied draws and limited cadence claims remain accurately qualified. No sustained 120 FPS or broad network/platform claim is inferred. The focused permission/local-view scope change is ready from this review.
HD native texture authority previously refused render passes even though the transaction restores authoritative CPU VRAM and GPU presentation surfaces. This change permits that path. In explicitly opted-in forward netplay, a temporal pass receives the same presentation-only local-view scope as the base own-view draw. Rollback resimulation remains refused.
The final diff is five files. Input replay, scheduling, PGXP, rewind, render-thread, and tracing work from the earlier draft has been removed.
Validation:
render_pass_sandbox_testpasses on Windows and macOS. Positive opted-in local temporal passes, discarded passes, device-read abort, rollback refusal, and a nonparticipating peer preserve the shared RAM/register/clock/interrupt digest.passesmode passed 14/14 checks at 1x and 9x on macOS; Windows sandbox passed after the fixture change.applied_draws=0), so it proves pass admission with HD authority but not replacement-pixel use. R4 consuming-title receipt.d19d8c7eversus this PR's renderer, same hidden real-GL 9x scenes, five interleaved runs per scene and OS. Windows capture medians: 329.25 ms base / 324.63 ms PR; lines: 435.23 / 450.08 ms. Mac capture: 306.12 / 290.59 ms; lines: 405.36 / 403.73 ms. Digests match within each OS, all checks pass, and the variation is larger than the patch's observed timing differences. These are fixture process-wall measurements, not title output FPS.No sustained 120 FPS claim is made. Desktop Duplication delivered no updates on this PC; a 12-second Windows.Graphics.Capture probe saw changing window pixels but was capture-bound (13.15 captured surfaces/s versus 349 GL source captures and 167 swaps), so it cannot establish physical display cadence. The code change is restricted to permission and local-view scope; ongoing high-refresh throughput work is separate.