Closed Bug 1456555 Opened 7 years ago Closed 6 years ago

Always tile blob images larger than a certain size

Categories

(Core :: Graphics: WebRender, defect, P2)

defect

Tracking

()

RESOLVED FIXED
mozilla65
Tracking Status
firefox62 --- wontfix
firefox63 --- wontfix
firefox64 --- wontfix
firefox65 --- fixed

People

(Reporter: jrmuizel, Assigned: mattwoodrow)

References

()

Details

Attachments

(6 files, 3 obsolete files)

Scrolling around large svg images runs into this problem.
Blocks: 1454810
Blocks: 1450375
Based on related issues like bug 1477727 and 1448868 marking this wontfix for 62. We could still get a patch in for 63 though.
We don't plan on uplifting anything WebRender related to 63.
We'll probably want this so that we get decent texture upload performance
Blocks: stage-wr-trains
No longer blocks: stage-wr-next
I tried this and we get rendering errors on digitalocean and the performance actually gets worse. This needs to be debugged.
We can't release this to the field, but we can let this ride to beta.
Priority: P1 → P2
Attached patch Make more tiles (obsolete) — Splinter Review
Assignee: nobody → jmuizelaar
Comment on attachment 9007891 [details] [diff] [review] Make more tiles Review of attachment 9007891 [details] [diff] [review]: ----------------------------------------------------------------- ::: gfx/webrender_bindings/src/bindings.rs @@ +1255,5 @@ > txn.add_image( > image_key, > descriptor.into(), > ImageData::new_blob_image(bytes.flush_into_vec()), > + if descriptor.format == ImageFormat::BGRA8 { Some(256, 256) } else { None } Some(256)
Attachment #9007891 - Flags: feedback+
> descriptor.format == ImageFormat::BGRA8 Is this check to exclude masks? I think that deserves a comment, maybe with a pointer to bug 1435896.
Blocks: 1470219
(In reply to Markus Stange [:mstange] from comment #8) > maybe with a pointer to bug 1435896. Er oops, that bug is fixed. Huh.
Without the format check I was getting crashes. I didn't have a chance to investigate. However, I too thought tiled masks weren't implemented.
Attachment #9007891 - Attachment is obsolete: true
Assignee: jmuizelaar → matt.woodrow
MozReview-Commit-ID: D71C1DaJIeV
MozReview-Commit-ID: AfA6dfFdgsQ Depends on D10031
MozReview-Commit-ID: I4XFoTp1szZ Depends on D10033
This just makes the existing hack available to all DataSourceSurface implementations by default, since we use different ones with WR. MozReview-Commit-ID: GVR0rIx8wtD Depends on D10036
This got added in bug 1429508 and then removed in bug 1451845. Tiled blobs adds tests for this, so it shouldn't break again. MozReview-Commit-ID: 3azL7SoWlr2 Depends on D10038
MozReview-Commit-ID: JRpQ5nVFx0r Depends on D10043
Attachment #9020679 - Attachment is obsolete: true
Attachment #9020681 - Attachment is obsolete: true
Pushed by mwoodrow@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/4261b7dc70f7 Fix bugs in DrawTargetOffset. r=mstange https://hg.mozilla.org/integration/autoland/rev/d46e2737134f Support Map on multiple threads. r=rhunt https://hg.mozilla.org/integration/autoland/rev/afb19dd18556 Fix SourceSurface offset handling in DTSkia::PushLayer. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/1f269ed43301 Deal with clipped containers being smaller than their contents during blob building. r=Gankro https://hg.mozilla.org/integration/autoland/rev/ca90391329b7 Enable tiled blobs. r=Gankro
Pushed by mwoodrow@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/c4df6309a5be Fix bugs in DrawTargetOffset. r=mstange https://hg.mozilla.org/integration/autoland/rev/595abbb5bf3e Support Map on multiple threads. r=rhunt https://hg.mozilla.org/integration/autoland/rev/6cc965ecc095 Fix SourceSurface offset handling in DTSkia::PushLayer. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/5e3b20a19162 Deal with clipped containers being smaller than their contents during blob building. r=Gankro https://hg.mozilla.org/integration/autoland/rev/0f2854553c21 Enable tiled blobs. r=Gankro
Pushed by mwoodrow@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/c6c46594d92a Fix bugs in DrawTargetOffset. r=mstange https://hg.mozilla.org/integration/autoland/rev/d92ef360413c Support Map on multiple threads. r=rhunt https://hg.mozilla.org/integration/autoland/rev/0fb0a03bae20 Fix SourceSurface offset handling in DTSkia::PushLayer. r=lsalzman https://hg.mozilla.org/integration/autoland/rev/69a424edfb4d Deal with clipped containers being smaller than their contents during blob building. r=Gankro https://hg.mozilla.org/integration/autoland/rev/7a308f25794f Enable tiled blobs. r=Gankro
Depends on: 1505290
For posterity: == Change summary for alert #17389 (as of Tue, 06 Nov 2018 15:40:09 GMT) == Regressions: 42% tsvgx linux64-qr opt e10s stylo 245.27 -> 347.63 Improvements: 45% tsvg_static windows10-64-qr opt e10s stylo 90.13 -> 49.27 31% tsvgr_opacity windows10-64-qr opt e10s stylo 159.57 -> 109.79 23% tsvgr_opacity linux64-qr opt e10s stylo 155.84 -> 120.12 7% tsvg_static linux64-qr opt e10s stylo 68.62 -> 64.14 6% tsvgx windows10-64-qr opt e10s stylo 259.88 -> 243.24 For up to date results, see: https://treeherder.mozilla.org/perf.html#/alerts?id=17389
Blocks: 1489830
Depends on: 1506109
Flags: needinfo?(matt.woodrow)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: