[Webkit-unassigned] [Bug 105230] New: [Graphics] PathTraversalState.cpp does too many sqrts!
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Mon Dec 17 16:59:58 PST 2012
https://bugs.webkit.org/show_bug.cgi?id=105230
Summary: [Graphics] PathTraversalState.cpp does too many sqrts!
Product: WebKit
Version: 528+ (Nightly build)
Platform: Unspecified
OS/Version: Unspecified
Status: NEW
Severity: Normal
Priority: P2
Component: Layout and Rendering
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: pdr at google.com
CC: eric at webkit.org, schenney at chromium.org,
fmalita at chromium.org
Check out this profile of SvgCubics.html:
62.73% SignalSender libm.so [.] sqrtf
7.08% SignalSender libDumpRenderTree.so [.] WebCore::PathTraversalState::cubicBezierTo(WebCore::FloatPoint const&, WebCore::FloatPoint const&, WebCore::FloatPoint const&)
5.95% SignalSender libDumpRenderTree.so [.] WebCore::CubicBezier::split(WebCore::CubicBezier&, WebCore::CubicBezier&) const
4.70% SignalSender libDumpRenderTree.so [.] WebCore::distanceLine(WebCore::FloatPoint const&, WebCore::FloatPoint const&)
...
And the stack version:
62.73% SignalSender libm.so [.] sqrtf
|
--- WebCore::PathTraversalState::cubicBezierTo(WebCore::FloatPoint const&, WebCore::FloatPoint const&, WebCore::FloatPoint const&)
WebCore::pathLengthApplierFunction(void*, WebCore::PathElement const*)
WebCore::Path::apply(void*, void (*)(void*, WebCore::PathElement const*)) const
|
|--50.53%-- WebCore::Path::pointAtLength(float, bool&) const
| WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath(WebCore::SVGInlineTextBox*, WebCore::RenderSVGInlineText*, WebCore::RenderStyle const*)
| WebCore::SVGTextLayoutEngine::layoutInlineTextBox(WebCore::SVGInlineTextBox*)
...
62% of the time spent in sqrtf! There may be some low hanging fruit here, such as working with squared length values in curveLength(...) or consolidating distanceLine(...) calls so only a single sqrt is needed in approximateDistance().
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list