Last Comment Bug 766429 - Minimize the size of the offscreen surfaces created for SVG group opacity, masks and complex clipPaths
: Minimize the size of the offscreen surfaces created for SVG group opacity, ma...
Status: RESOLVED FIXED
: perf
Product: Core
Classification: Components
Component: SVG (show other bugs)
: Trunk
: All All
: -- normal (vote)
: mozilla16
Assigned To: Jonathan Watt [:jwatt] (Away Jun. 27 - Jul. 13)
:
Mentors:
Depends on: 734082 779035
Blocks: 754644 309782 608495 762647
  Show dependency treegraph
 
Reported: 2012-06-19 19:14 PDT by Jonathan Watt [:jwatt] (Away Jun. 27 - Jul. 13)
Modified: 2012-07-31 07:01 PDT (History)
3 users (show)
See Also:
Crash Signature:
(edit)
QA Whiteboard:
Iteration: ---
Points: ---
Has Regression Range: ---
Has STR: ---


Attachments
patch (1.65 KB, patch)
2012-06-19 19:15 PDT, Jonathan Watt [:jwatt] (Away Jun. 27 - Jul. 13)
no flags Details | Diff | Review
patch (1.73 KB, patch)
2012-06-19 19:18 PDT, Jonathan Watt [:jwatt] (Away Jun. 27 - Jul. 13)
roc: review+
Details | Diff | Review

Description Jonathan Watt [:jwatt] (Away Jun. 27 - Jul. 13) 2012-06-19 19:14:09 PDT
Now that bug 734082 is fixed and we have valid visual overflow rects on both SVG leaf and container frames, we can use these rects to minimize the size of the surfaces we create for SVG group opacity, masking and complex clipping. This should be a fairly substantial perf win on some SVG demos where we performed much worse than other implementations.
Comment 1 Jonathan Watt [:jwatt] (Away Jun. 27 - Jul. 13) 2012-06-19 19:15:24 PDT
Created attachment 634710 [details] [diff] [review]
patch
Comment 2 Jonathan Watt [:jwatt] (Away Jun. 27 - Jul. 13) 2012-06-19 19:18:29 PDT
Created attachment 634713 [details] [diff] [review]
patch

Forgot to qrefresh.
Comment 3 Jonathan Watt [:jwatt] (Away Jun. 27 - Jul. 13) 2012-06-20 02:04:08 PDT
Pushed https://hg.mozilla.org/integration/mozilla-inbound/rev/74a1fc0f4859
Comment 4 Robert Longson 2012-06-20 06:56:11 PDT
It seems to me that this has made bug 614840 much more frequent
Comment 5 Jonathan Watt [:jwatt] (Away Jun. 27 - Jul. 13) 2012-06-20 07:11:16 PDT
Interesting. Still, it's not due to the clip added in this patch clipping away stuff that shouldn't be clipped away. It's just an off-by-one difference to the R and B components of two pixels that are clearly well inside this additional clip, and only on Win6.1. I think we should just mark those test with fuzzy-if for that platform.
Comment 6 Robert Longson 2012-06-20 07:13:37 PDT
a 2 pixel fuzzy-if sounds good.
Comment 7 :Ehsan Akhgari (out sick) 2012-06-20 08:02:09 PDT
https://hg.mozilla.org/mozilla-central/rev/74a1fc0f4859
Comment 8 Jonathan Watt [:jwatt] (Away Jun. 27 - Jul. 13) 2012-06-21 07:55:03 PDT
For me, this gave the IE Test Drive Helicopter demo in bug 608495 a huge 150x speedup.

It seems to have also fixed the freezes that occurred when interacting with the maps on genomemaps.org reported in bug 754644.

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