[cairo-bugs] [Bug 17971] New: Extreme slowdown for manual convolutions in most vector backends.
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Wed Oct 8 05:48:21 PDT 2008
http://bugs.freedesktop.org/show_bug.cgi?id=17971
Summary: Extreme slowdown for manual convolutions in most vector
backends.
Product: cairo
Version: 1.8.1
Platform: Other
OS/Version: All
Status: NEW
Severity: normal
Priority: medium
Component: pdf backend
AssignedTo: ajohnson at redneon.com
ReportedBy: jpihlaja at cc.helsinki.fi
QAContact: cairo-bugs at cairographics.org
Created an attachment (id=19487)
--> (http://bugs.freedesktop.org/attachment.cgi?id=19487)
addblur.c convolves with ADD and paint_with_alpha
When simulating a blur effect with OPERATOR_ADD and paint_with_alpha(), the pdf
backends suffer from extreme slowdown as the number of convolutions is
increased compared to the image backend or the PDF backend of cairo-1.2.4. The
attached mini program addblur.c illustrates the issue for various backends. The
issue affects the svg1.1, ps2, ps3, and the pdf backends at least, but not the
svg backend when emitting SVG1.2.
The run times below were generated with cairo HEAD at commit
0c777a3e0de0d48289432a3 (similar results can be seen with cairo-1.6.4). After
the first few blur levels the times seem to grow exponentially.
0 misc $ time ./addblur pdf 1
real 0m0.376s
user 0m0.348s
sys 0m0.028s
0 misc $ time ./addblur pdf 2
real 0m0.418s
user 0m0.388s
sys 0m0.028s
0 misc $ time ./addblur pdf 3
real 0m0.602s
user 0m0.528s
sys 0m0.072s
0 misc $ time ./addblur pdf 4
real 0m1.334s
user 0m1.080s
sys 0m0.252s
0 misc $ time ./addblur pdf 5
real 0m4.198s
user 0m3.188s
sys 0m0.960s
0 misc $ time ./addblur pdf 6
real 0m15.672s
user 0m11.957s
sys 0m3.712s
0 misc $ time ./addblur pdf 7
real 1m3.895s
user 0m47.687s
sys 0m15.917s
With cairo-1.2.4 the times were much less sensitive to the blur level:
0 misc $ time ./addblur pdf 1
real 0m0.395s
user 0m0.336s
sys 0m0.028s
0 misc $ time ./addblur pdf 2
real 0m0.371s
user 0m0.348s
sys 0m0.024s
0 misc $ time ./addblur pdf 3
real 0m0.384s
user 0m0.352s
sys 0m0.016s
0 misc $ time ./addblur pdf 4
real 0m0.380s
user 0m0.364s
sys 0m0.012s
0 misc $ time ./addblur pdf 5
real 0m0.400s
user 0m0.368s
sys 0m0.028s
0 misc $ time ./addblur pdf 6
real 0m0.409s
user 0m0.300s
sys 0m0.100s
0 misc $ time ./addblur pdf 7
real 0m0.450s
user 0m0.400s
sys 0m0.020s
--
Configure bugmail: http://bugs.freedesktop.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
More information about the cairo-bugs
mailing list