webrender: re-enable ImageType_Image border-images
Categories
(Core :: Graphics: WebRender, enhancement, P3)
Tracking
()
People
(Reporter: Gankra, Assigned: aosmond)
References
(Blocks 2 open bugs, Regressed 1 open bug)
Details
(Keywords: perf, Whiteboard: [wr-reserve][gfx-noted])
Attachments
(1 file)
(deleted),
text/x-phabricator-request
|
RyanVM
:
approval-mozilla-beta+
|
Details |
Updated•7 years ago
|
Updated•7 years ago
|
Comment 1•7 years ago
|
||
Comment 2•7 years ago
|
||
Updated•7 years ago
|
Updated•7 years ago
|
Comment 3•7 years ago
|
||
Updated•7 years ago
|
Assignee | ||
Comment 5•5 years ago
|
||
Let's get a sense for what is failing:
try: https://treeherder.mozilla.org/#/jobs?repo=try&revision=53261003dbb250b68ae5b30b9735ca890b1f5d00
Assignee | ||
Comment 6•5 years ago
|
||
Before this patch, we would use fallback for all border images. Now for
all but vector images we will use the WebRender border images
primitives. Vector images are an exception because the fallback is
clever in that it upscales the vector image and clips to only draw the
region it requires. This avoids artifacting but to do something similar
for WebRender as it is currently defined, we would increase our CPU and
memory footprint as we would need to produce the entire vector image
upscaled, not just the parts we need. In the future we should change
WebRender to accept different image resources for each of the segments.
Assignee | ||
Comment 7•5 years ago
|
||
Comment 9•5 years ago
|
||
Backed out changeset 9ad9e16d94d9 (bug 1409773) for crashtest failures at 640272.html
Backout link: https://hg.mozilla.org/integration/mozilla-inbound/rev/61b8a240adc8d582d1db05e3f8a4a409bef78bbf
Push with failures: https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&resultStatus=testfailed%2Cbusted%2Cexception&revision=9ad9e16d94d9a0f7545e98dd5c1a7bb352770d4a&selectedJob=255117384
Log snippet:
[task 2019-07-06T20:17:23.761Z] 20:17:23 INFO - REFTEST TEST-UNEXPECTED-FAIL | file:///builds/worker/workspace/build/tests/reftest/tests/layout/base/crashtests/640272.html == file:///builds/worker/workspace/build/tests/reftest/tests/layout/base/crashtests/640272-ref.html | image comparison, max difference: 255, number of differing pixels: 176
Comment 10•5 years ago
|
||
Updated•5 years ago
|
Assignee | ||
Updated•5 years ago
|
Comment 11•5 years ago
|
||
bugherder |
Assignee | ||
Comment 12•5 years ago
|
||
Comment on attachment 9076254 [details]
Bug 1409773 - Use WebRender instead of fallback for border raster images.
Beta/Release Uplift Approval Request
- User impact if declined: Pages with large border images will be slow. See bug 1556243 for an example which this patch resolves.
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Medium
- Why is the change risky/not risky? (and alternatives if risky): While the patch itself is modest, this does completely change how border images are rendered when WebRender is enabled; before we would use the fallback method. On the other hand, we have many reftests for this, and it will only affect the population which has WebRender enabled (~5% of users). It is also trivial to write a new patch to use fallback just as we have before without backing out the uplift.
- String changes made/needed:
Comment 13•5 years ago
|
||
Comment on attachment 9076254 [details]
Bug 1409773 - Use WebRender instead of fallback for border raster images.
Improves WebRender performance for tables with large border images. Approved for 69.0b4.
Comment 14•5 years ago
|
||
bugherder uplift |
Updated•5 years ago
|
Description
•