fix(windows): size all D3D11 render pools to five slots — restores the #267 pool fix lost in merge - #280
fix(windows): size all D3D11 render pools to five slots — restores the #267 pool fix lost in merge#280petercr wants to merge 2 commits into
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
Included review availability: Your plan provides up to 2 included reviews per hour; 1 remains after this review. 📝 WalkthroughWalkthroughThe D3D11 render pool now always allocates five slots. The existing test was renamed and updated to verify five slots for non-camera sessions. ChangesD3D11 render pool sizing
Estimated code review effort: 1 (Trivial) | ~5 minutes Merge Risk: 🔵 Low · up to The pool-sizing change has no identified product-impacting defect, but the Rust lint check did not complete. The PR is mergeable with explicit owner follow-up to rerun and complete that check; no actionable runtime merge blocker is otherwise supported. 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Rebased TheOrcDev#280 onto current main: screen-only sessions still starve CFR ticks into silent single-frame skips with 3-slot pools under fence lag, and the TheOrcDev#262 stop/preview-restore accounting keeps steady-state churn high for every session shape. The per-format pool ceiling of 8 accommodates 5 slots for split screen-camera sessions.
30b1dd8 to
cfe2e3b
Compare
Rebased onto current main — still neededRefreshed the branch onto Still applies and still matters because:
Gates: |
Summary
The #267 merge landed the ScreenCamera smokes, diagnostics, and drain pacing, but kept the pre-#262 pool sizing (
windows_d3d11_render_pool_slotsreturns 3 for screen-only, 5 for camera sessions). The reviewed #267 stack sized all pools to five slots unconditionally — post-#262 stop/preview-restore accounting raised steady-state churn for every session shape, and a 3-slot screen-only pool starves CFR ticks into silent single-frame skips under fence lag.Evidence (win11-x64-i5-8400-gtx1650-super, GTX 1650 SUPER)
With main's sizing, a screen-only direct-D3D11 session shows
texturePoolPressureEvents > 0and cadence loss; with all pools at 5 slots, pressure events are 0 across runs and observed fps recovers above the issue floor. This sizing is also the leading suspect for the open P0 second-session decay (#271 release record), since decay reproduces only with real camera sessions where lease residency stretches furthest.Changes
windows_d3d11_render_pool_slotsreturns 5 unconditionally (still inside the per-format pool ceiling of 8)windows_d3d11_sessions_size_deep_render_poolsasserting both shapes = 5Testing
cargo test -p videorc-backend: 1519 passed, 0 failedcargo fmt --check --all: clean--d3d11 --require-d3d11): PASS, pressure 0, 29.5fps observed on 1080p30Related: open P0 "second-session recording lag" in docs/releases/0.9.71.md
Summary by CodeRabbit