[Webkit-unassigned] [Bug 19118] Animated SVG performs and renders really badly

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Mar 13 04:25:09 PDT 2012


https://bugs.webkit.org/show_bug.cgi?id=19118





--- Comment #13 from Nikolas Zimmermann <zimmermann at kde.org>  2012-03-13 04:25:08 PST ---
Reduction without masks, use or anything:

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 800 800">
    <text id="text" y="40" font-family="Impact" font-size="48" transform="rotate(-8 400 400)">
      <tspan>Time is running. Do you have the time? Lunchtime.</tspan>
      <tspan dy="1em" x="0">Tick tock tick tock. Seven o'clock. Tick tock.</tspan>      
      <tspan dy="1em" x="0">Watch out. 6.30am, August 27, 2013. Glue.</tspan>      
      <tspan dy="1em" x="0">Did you see 23:23 on the alarmclock again?</tspan>      
      <tspan dy="1em" x="0">In Tokyo it's already noon. But you are somewhere else.</tspan>      
      <tspan dy="1em" x="0">Wake up, time for work. When is the meeting?</tspan>      
      <tspan dy="1em" x="0">Are you late? What time is it? Snoozing polar bears.</tspan>      
      <tspan dy="1em" x="0">4pm. The taxi is waiting. Scheduled plans.</tspan>      
      <tspan dy="1em" x="0">In a way it's already December. Validate.</tspan>
      <tspan dy="1em" x="0">The summer is coming, but it's still spring.</tspan>      
      <tspan dy="1em" x="0">Can't wait any longer. Cold storage required.</tspan>      
      <tspan dy="1em" x="0">Early morning hacking. Infinitesimal loop iterations.</tspan>
      <tspan dy="1em" x="0">The milk expired while I read the newspaper.</tspan>      
      <tspan dy="1em" x="0">A kiss as I left in the morning. Do you have the timetable? </tspan>      
      <tspan dy="1em" x="0">Travelling to Nice, France. Bonjour I suppose.</tspan>
      <tspan dy="1em" x="0">13 hundred hours. Time flying. Is it bedtime yet?</tspan>      
      <tspan dy="1em" x="0">Are we there yet? Killing time in Amsterdam.</tspan>
    </text>

  <animateTransform type="rotate" values="0 400 400;360 400 400" dur="360s" repeatDur="indefinite" attributeName="transform" xlink:href="#text"/>
</svg>

This still consumes 100% CPU for us in release builds, FF is at 85%, Opera around 10%.
Intstruments says almost all time is spent inside CoreGraphics, I have to look deep to find WebCore functions.

Even simpler test:
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 800 800">
<text id="text" y="40" font-family="Impact" font-size="48" transform="rotate(-8 400 400)">Time is running. Do you have the time? Lunchtime.</text>
<animateTransform type="rotate" values="0 400 400;360 400 400" dur="360s" repeatDur="indefinite" attributeName="transform" xlink:href="#text"/>
</svg>

Both FF & us consume around 25% cpu for that.
I'm attaching a screenshot of Instruments while running the simple testcase for 1 minute.

-- 
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