Closed Bug 1654442 Opened 4 years ago Closed 4 years ago

Add primitives to picture cache slices earlier during scene building

Categories

(Core :: Graphics: WebRender, task)

task

Tracking

()

RESOLVED FIXED
mozilla80
Tracking Status
firefox80 --- fixed

People

(Reporter: gw, Assigned: gw)

References

Details

Attachments

(1 file)

No description provided.

Previously, scene building added all primitives to the picture tree, and then
sliced the top level picture up into picture cache slices as a post-process.

Now, primitives are added to picture cache slices as the main picture tree
is built.

In the rare case of ending up with too many picture cache slices, they
are combined into a single picture cache. This means that the common
case (the scene has a reasonable number of slices) is faster, since there
is no need to split up an array of primitives into multiple slices.

This is an optimization to scene building time, for the above reason as well
as avoiding another picture tree traversal. However, the primary benefit is
that we can know much earlier what the shared_clips are that make up each
picture cache slice. Follow up commits will take advantage of this to remove
much of the clip-chain related work that is currently done for every frame build.

Assignee: nobody → gwatson
Status: NEW → ASSIGNED
Blocks: 1623792
Pushed by gwatson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/72f4a4d07192
Add primitives to picture cache slices earlier during scene building r=nical
Status: ASSIGNED → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla80

== Change summary for alert #26577 (as of Thu, 23 Jul 2020 18:26:35 GMT) ==

Improvements:

5% displaylist_mutate windows10-64-shippable-qr opt e10s stylo 2,658.69 -> 2,512.78
5% displaylist_mutate linux64-shippable-qr opt e10s stylo 3,027.95 -> 2,878.37

For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=26577

Regressions: 1657690
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: