Move the display port in larger increments when webrender is enabled
Categories
(Core :: Graphics: WebRender, enhancement, P2)
Tracking
()
People
(Reporter: nical, Assigned: nical)
References
(Blocks 1 open bug)
Details
Attachments
(2 files, 1 obsolete file)
With WebRender the displayport is updated every 128px which causes very frequent scene builds.
Assignee | ||
Comment 1•5 years ago
|
||
Assignee | ||
Comment 2•5 years ago
|
||
Updated•5 years ago
|
Updated•5 years ago
|
Comment 4•5 years ago
|
||
Backed out for mochitest failures on test_group_zoom.html
Backout link: https://hg.mozilla.org/integration/autoland/rev/27e254e8a57504c284959b209eac538a35871b3c
Log link: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=301007901&repo=autoland&lineNumber=11669
Assignee | ||
Updated•5 years ago
|
Comment 6•5 years ago
|
||
bugherder |
Assignee | ||
Updated•5 years ago
|
Updated•5 years ago
|
Assignee | ||
Comment 7•4 years ago
|
||
tscrollx is very sensible to the size of the displayport. I am trying a few approaches:
- (A) reduce the displayport for 3.5 screenfulls to 2.5 screenfulls of content
- (B) align the position and size separately (keep aligning the size to 128) to avoid enlarging the displayport
(A) alone isn't enough because large alignment still round up to large display ports. There is also more risk of checkerboarding. On the other hand it considerably reduces the CPU time spent on displaylist building scene building and frame building.
(B) in addition to (A) results in nice tp5o_scroll improvements while avoiding the tscrollx regression https://treeherder.mozilla.org/perf.html#/compare?originalProject=try&originalRevision=d2e4ea0d39f7edf3bb30f39649d8110f0ef7ce49&newProject=try&newRevision=f3a554158ca6510e0752361c50b75d5ff1db88bc&framework=1
The tp5o_scroll improvements come from the smaller displayport, this is the result of smaller displayport without the alignment changes: https://treeherder.mozilla.org/perf.html#/compare?originalProject=try&originalRevision=d2e4ea0d39f7edf3bb30f39649d8110f0ef7ce49&newProject=try&newRevision=af536c4a53122ca183d1d738a07aff26021e8bfe&framework=1
The extra checkerboarding form (A) isn't noticeable on pages like youtube's front page, but it is very noticeable on pages where the content process's main thread is very busy with layout, style or js like https://github.com/n64decomp/ido/blob/master/src/uopt/uoptemit.c
It would be great to be able to mitigate that by dynamically growing the display port when we detect that we are checkerboarding.
Waiting for results of doing (B) without (A): https://treeherder.mozilla.org/perf.html#/compare?originalProject=try&originalRevision=d2e4ea0d39f7edf3bb30f39649d8110f0ef7ce49&newProject=try&newRevision=74e5b18e7cdd26122bb1a48d190e292c2bbfc771&framework=1
All of these are with an alignment of 1024 for the displayport (position or position+size) instead of 128.
Assignee | ||
Comment 8•4 years ago
|
||
This allows moving the displayport in much larger increments (1024) without increasing the displayport size which regresses tscrollx.
Updated•4 years ago
|
Comment 10•4 years ago
|
||
Backed out changeset ab8da9fe39fe (Bug 1635472) for causing reftest failures in dynamic-toolbar-sticky-4b.html CLOSED TREE
Failure log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=306080329&repo=autoland&lineNumber=12237
Backout: https://hg.mozilla.org/integration/autoland/rev/cfa67d766e0b617742dd6d6fab712125ff3ee795
Comment 11•4 years ago
|
||
Updated•4 years ago
|
Assignee | ||
Updated•4 years ago
|
Comment 12•4 years ago
|
||
Comment 13•4 years ago
|
||
bugherder |
Updated•4 years ago
|
Updated•4 years ago
|
Description
•