Open Bug 1490751 Opened 6 years ago Updated 7 months ago

Updating the display list for a background tab causes the scene to be re-built

Categories

(Core :: Graphics: WebRender, enhancement, P3)

enhancement

Tracking

()

People

(Reporter: nical, Assigned: nical)

References

(Blocks 1 open bug)

Details

Attachments

(1 file, 1 obsolete file)

Associated webrender issue: https://github.com/servo/webrender/issues/3047 Gecko sometimes creates and updates display lists ahead of time before attaching them to the current scene. This allows us among other things to pre-rasterize blobs during background tab warming to switch to the tab faster, but it also causes the current scene to be re-built, even though the affected pipeline isn't connected to the scene yet. We should make it so that updating a display list for a pipeline that isn't attached to the scene doesn't trigger scene building. It should be possible to address this entirely in webrender.
Do you think we need this for the MVP?
Flags: needinfo?(nical.bugzilla)
Priority: -- → P3
(In reply to Jeff Muizelaar [:jrmuizel] from comment #1) > Do you think we need this for the MVP? It would be good to understand how much work it would be. It seems at least plausible that it might be trivial, in which case it's a pretty significant CPU work reduction when mousing over the tab strip that we should get in. If it's more work we should reevaluate.
Right now updating the display list triggers lots of stuff including gl commands executed for off-screen surfaces even if we don't paint the window. I think that we should fix this or at least get the amount of CPU/GPU work that it triggers to a more reasonable level for the MVP.
Flags: needinfo?(nical.bugzilla)
Priority: P3 → P2
Priority: P2 → P3
Attachment #9013704 - Attachment is obsolete: true
Assignee: nobody → nical.bugzilla
Blocks: stage-wr-next
No longer blocks: stage-wr-trains

Track which pipeline ids are referenced per document and skip scene building when possible.

looks like this never landed.. Did you mean to mark the patch as obsolete?

Flags: needinfo?(nical.bugzilla)

I'll let this linger for a while longer and wait for a motivating test case to come up before I pick it up again. I don't remember whether this never landed because bugs had to be fixed or if it just fell down the priority list.

Flags: needinfo?(nical.bugzilla)
Severity: normal → S3
Blocks: wr-dl-bypass
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: