Closed Bug 766429 Opened 13 years ago Closed 13 years ago

Minimize the size of the offscreen surfaces created for SVG group opacity, masks and complex clipPaths

Categories

(Core :: SVG, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla16

People

(Reporter: jwatt, Assigned: jwatt)

References

Details

(Keywords: perf)

Attachments

(1 file, 1 obsolete file)

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.
Attached patch patch (obsolete) — Splinter Review
Attachment #634710 - Flags: review?(roc)
Attached patch patchSplinter Review
Forgot to qrefresh.
Attachment #634710 - Attachment is obsolete: true
Attachment #634710 - Flags: review?(roc)
Attachment #634713 - Flags: review?(roc)
Target Milestone: --- → mozilla16
It seems to me that this has made bug 614840 much more frequent
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.
a 2 pixel fuzzy-if sounds good.
Status: ASSIGNED → RESOLVED
Closed: 13 years ago
Resolution: --- → FIXED
Blocks: 309782
Blocks: 608495
Blocks: 754644
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.
Blocks: 762647
Depends on: 779035
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: