Closed
Bug 1510365
Opened 7 years ago
Closed 2 years ago
Slow-render warnings on dock-connected 30hz monitor.
Categories
(Core :: Graphics: WebRender, defect, P3)
Core
Graphics: WebRender
Tracking
()
RESOLVED
INACTIVE
People
(Reporter: mhoye, Unassigned)
References
Details
Per https://perfht.ml/2TReZxq
I am seeing consistent slow-render warnings that I can reproduce at will by scrolling rapidly.
Hardware is a current-gen Microsoft Surface Book plugged into its docking station, with two external monitors - a 4k BenQ running at 30hz, and a Dell [something] running 1080p in portrait.
Comment 1•7 years ago
|
||
My theory is that we're trying to drive the screen at 60hz but only able to present at 30hz. This is probably a problem pre-webrender. My suspicion is that we don't handle the case of different monitors running at different rates very well.
Ryan, any thoughts about what we're doing vs what we should be doing.
Flags: needinfo?(rhunt)
Comment 2•7 years ago
|
||
Currently we only have one global vsync source that drives refresh ticks and compositing. On Windows this uses a thread that waits on DwmFlush().
My recollection is that Dwm will update its 'scene' at the refresh rate of the primary monitor (in this case the Surface Book), while each monitor runs at their native refresh rate sampling the Dwm updates. I could be off on that, I haven't tested and can't find where I read that.
It would be interesting if you could switch the primary monitor [1] to the 30hz screen and see the effect it has on the slow frame indicator.
Ideally we'd have vsync sources for each monitor, and refresh ticking/compositing could be done at the correct rate for each window. We'd have to change the API we use on Windows to something like WaitForVBlank [2]. I had patches to do this for our global source, but it ran into unpredictable failures on try. Bas was going to talk to some MS folks about it, but it kind of fell off the radar.
[1] https://www.tenforums.com/tutorials/3871-change-main-display-windows-10-a.html
[2] https://docs.microsoft.com/en-us/windows/desktop/api/dxgi/nf-dxgi-idxgioutput-waitforvblank
Flags: needinfo?(rhunt)
Updated•7 years ago
|
Blocks: stage-wr-trains
Priority: -- → P3
Updated•3 years ago
|
Severity: normal → S3
Updated•2 years ago
|
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → INACTIVE
You need to log in
before you can comment on or make changes to this bug.
Description
•