Skip to content

ng1: validate resident frames through wgpu window - #732

Merged
techomancer merged 5 commits into
techomancer:mainfrom
Tzeentchnet:feature/gpu-upstream-m2-presenter
Nov 14, 2026
Merged

techomancer merged 5 commits into
techomancer:mainfrom
Tzeentchnet:feature/gpu-upstream-m2-presenter

Conversation

@Tzeentchnet

Copy link
Copy Markdown
Contributor

Summary

  • Exercise the test-only Newport resident handoff through the real same-device wgpu renderer and a native window, preserving ordered draws and resize handling.
  • Compare the presenter's unpacked frame texture pixel-for-pixel with the software compositor for two distinct frames and a resized frame, including padded-row readback. Assert no CPU-plane access, raw-plane traffic, or routine composed-frame readback.
  • Update the resident gate and documentation, including the follow-up guidance from ng1: expand resident DID state on the GPU #731 and coordination with the draft shared-presenter work in display: skip idle frames on the O2 and VPro with a shared screen-changed flag #698.

Scope and limitations

This builds on merged #731 and remains test-only; it does not enable production Newport GPU mode. The texture readback is an explicit test diagnostic, not part of ordinary presentation. Surface submission is exercised, but the test does not inspect final swapchain or on-screen pixels.

The threaded native-window test is available on Windows and Linux. macOS/Metal needs a separate main-thread window harness. #698 is not a prerequisite; its shared-presenter changes will need reconciliation if it lands.

Validation

On Windows with an NVIDIA RTX 5070, using an isolated worktree with a refreshed ignored lockfile:

.\scripts\test-resident-gate.ps1
cargo check --locked --offline -p iris --no-default-features
cargo check --locked --offline -p iris-gui --features iris/wgpu

The complete resident gate passed 65 tests, including the required Vulkan and D3D12 hardware runs. The main-worktree lockfile was left unchanged.

Compare ordered and resized resident frames with the software compositor using an explicit diagnostic readback of the common presenter texture. Document the native-window gate and its test-only scope.
@techomancer
techomancer merged commit a6e5aa3 into techomancer:main Nov 14, 2026
8 of 9 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants