Closed Bug 1572646 Opened 2 months ago Closed 2 months ago

Detect and optimize picture cache tiles that are solid colors.

Categories

(Core :: Graphics: WebRender, enhancement)

enhancement
Not set

Tracking

()

RESOLVED FIXED
mozilla70
Tracking Status
firefox70 --- fixed

People

(Reporter: gw, Assigned: gw)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

No description provided.

With this patch, tiles that are covered only by the opaque backdrop
primitive are detected and noted as solid colors.

Solid color tiles save memory and performance, because:

  • No texture slice is allocated as a render target for them.
  • No need to rasterize this tile.
  • Drawing the tile is done with the faster rectangle shader.

This already saves performance and GPU memory on quite a few
real world sites (esp. when running at 4k). However, the main
benefit of this will be once we enable picture caching on
multiple content slices and the UI layer. When this occurs, it's
important to avoid allocating tile buffers for all the solid
rectangle tiles that the UI layer typically contains.

Blocks: 1536360
Assignee: nobody → gwatson
Pushed by gwatson@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/96075609026a
Detect and optimize picture cache tiles that are solid colors. r=kvark
Status: NEW → RESOLVED
Closed: 2 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70

== Change summary for alert #22496 (as of Fri, 16 Aug 2019 09:46:35 GMT) ==

Improvements:

13% ts_paint_webext linux64-shippable-qr opt e10s stylo 345.29 -> 300.08
12% ts_paint linux64-shippable-qr opt e10s stylo 347.83 -> 305.58
12% ts_paint_webext linux64-shippable-qr opt e10s stylo 345.88 -> 305.08

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

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