Closed Bug 1567889 Opened 5 years ago Closed 5 years ago

Improve will-change budget access during display list building

Categories

(Core :: Web Painting, enhancement, P3)

enhancement

Tracking

()

RESOLVED FIXED
mozilla72
Tracking Status
firefox72 --- fixed

People

(Reporter: mikokm, Assigned: mikokm)

References

(Blocks 1 open bug)

Details

Attachments

(3 files)

The hashtable lookup for will-change budgeting was occasionally showing up in profiles, when investigating Youtube live chat performance (bug 1533815). We can avoid this by checking nsIFrame::MayHaveWillChangeBudget().
These patches showed a 1-2% improvement on DL mutate test on my MBP.

Depends on D38852

There are some r+ patches which didn't land and no activity in this bug for 2 weeks.
:miko, could you have a look please?
For more information, please visit auto_nag documentation.

Flags: needinfo?(mikokm)

This patch is incomplete. When doing a full display list rebuild, we call nsDisplayListBuilder::ClearWillChangeBudget(), which does not clear the will-change flag from the frames. This can be solved by unconditionally clearing the flag, if we are doing a full display list build.

Flags: needinfo?(mikokm)
Pushed by mikokm@gmail.com: https://hg.mozilla.org/integration/autoland/rev/7534c2a4a2d1 Part 1: Improve const correctness for some bool getters/setters r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/fe519c374527 Part 2: Avoid will-change budget lookups if the frame does not have the will-change bit set r=mattwoodrow https://hg.mozilla.org/integration/autoland/rev/8ebcde6a7778 Part 3: Cleanup will change budgeting r=mattwoodrow
Status: ASSIGNED → RESOLVED
Closed: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla72
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: