Closed Bug 1482956 Opened 7 years ago Closed 7 years ago

Don't dispatch a FinishedAsyncPaintTask message in PaintThread

Categories

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

enhancement

Tracking

()

RESOLVED FIXED
mozilla63
Tracking Status
firefox63 --- fixed

People

(Reporter: rhunt, Assigned: rhunt)

References

Details

(Whiteboard: [gfx-noted])

Attachments

(4 files)

It's not clear that this is needed, and it seems like an unnecessary context switch when using a worker thread pool.
These method names and ordering have gotten out of sync because of the recent churn.
Attachment #8999819 - Attachment is obsolete: true
This was needed when there were multiple types of CapturedPaintStates but is not anymore.
There should only ever be at most four TextureClients here, so allocated a vector seems wasteful.
This may have been needed at some point, but all the important code for EndLayerTransaction is in CompositorBridgeChild behind a lock, so this should be safe.
Attachment #8999819 - Attachment is obsolete: false
Wow I really botched that review request. Apologies, first time doing a commit series with phabricator.
Comment on attachment 8999823 [details] Bug 1482956 - Don't dispatch extra runnable for ending layer transaction. r?nical Nicolas Silva [:nical] has approved the revision.
Attachment #8999823 - Flags: review+
Comment on attachment 8999821 [details] Bug 1482956 - Remove templates for FinishedAsyncPaint methods in CompositorBridgeChild. r?nical Nicolas Silva [:nical] has approved the revision.
Attachment #8999821 - Flags: review+
Comment on attachment 8999822 [details] Bug 1482956 - Use an AutoTArray in PaintTask to reduce heap allocations. r?nical Nicolas Silva [:nical] has approved the revision.
Attachment #8999822 - Flags: review+
Comment on attachment 8999819 [details] Bug 1482956 - Standardize method names and add comments to PaintThread. r?nical Nicolas Silva [:nical] has approved the revision.
Attachment #8999819 - Flags: review+
Pushed by rhunt@eqrion.net: https://hg.mozilla.org/integration/mozilla-inbound/rev/2300b4b766ca Remove templates for FinishedAsyncPaint methods in CompositorBridgeChild. r=nical https://hg.mozilla.org/integration/mozilla-inbound/rev/0448f2851603 Use an AutoTArray in PaintTask to reduce heap allocations. r=nical https://hg.mozilla.org/integration/mozilla-inbound/rev/2698e4d327ef Don't dispatch extra runnable for ending layer transaction. r=nical https://hg.mozilla.org/integration/mozilla-inbound/rev/1185bd909214 Standardize method names and add comments to PaintThread. r=nical
Noticed some performance gains: == Change summary for alert #15153 (as of Mon, 20 Aug 2018 06:00:28 GMT) == Improvements: 3% rasterflood_svg linux64 pgo e10s stylo 12,649.38 -> 12,236.10 3% rasterflood_svg linux64 opt e10s stylo 12,014.92 -> 11,639.16 1% rasterflood_svg windows10-64 pgo e10s stylo10,263.42 -> 10,166.38 1% rasterflood_svg windows10-64 opt e10s stylo10,413.40 -> 10,321.40 For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=15153
Depends on: 1483772
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: