Bug 12671

Summary: Slow performance on blogger.com "newsticker"
Product: xorg Reporter: Albert Astals Cid <aacid>
Component: Driver/RadeonAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED WORKSFORME QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: 7.2 (2007.02)   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
html file for example
none
transparent backgroun
none
stylesheet to set transparent background on page none

Description Albert Astals Cid 2007-10-03 14:56:18 UTC
Hi, using 6.7.194 driver with EXA enabled the newsticker (BLOGS UPDATED AT...) that appears on blogger.com when not logged uses 100% of CPU power in both konqueror and firefox.

With the fglrx driver it works fine so it seems it's not a browser "problem".
Comment 1 Michel Dänzer 2007-10-05 00:34:03 UTC
It's pixmap migration overhead due to software fallbacks - missing RENDER acceleration with konqueror, stippled and tiled fills with firefox (not sure what the stippled fills are for...). If Option "AccelDFS" isn't enabled yet, it might help somewhat. Or you could try Option "MigrationHeuristic" "greedy" or "smart".
Comment 2 Alex Deucher 2007-11-12 21:08:15 UTC
see also bug 13207
Comment 3 Michel Dänzer 2007-11-21 00:43:24 UTC
(In reply to comment #2)
> see also bug 13207

This is just about slow performance, not a lockup.
Comment 4 Ross Vandegrift 2008-03-18 18:14:27 UTC
Created attachment 15277 [details]
html file for example
Comment 5 Ross Vandegrift 2008-03-18 18:14:42 UTC
Created attachment 15278 [details]
transparent backgroun
Comment 6 Ross Vandegrift 2008-03-18 18:15:09 UTC
Created attachment 15279 [details]
stylesheet to set transparent background on page
Comment 7 Ross Vandegrift 2008-03-18 18:15:26 UTC
I'm able to reproduce this on blogger.com, but this is a more general bug affecting pages Mozilla renders that use nested layers of transparency.

oprofile confirms that my test case and the blogger.com ticker hit the same functions.  The call stack ends up calling fbPolyFillRect into exaPolyFillRect.

I'll attach three files that together make up a pretty clean test case - a div that sets a transparent image for a page of text.  The problem is compounded easily by nesting the divs with transparent background.

The system begins to become unusable with five or so divs nested.
Comment 8 Michel Dänzer 2008-03-19 05:23:40 UTC
(In reply to comment #7)

Does it help if the width and height of the background image are powers of two? Some hardware can't directly accelerate repeating blits otherwise. With xserver master (to become 1.5) exaFillRegionTiled() could be used instead, but that may not be very efficient yet either with small patterns.

Also, as mentioned in comment #1, when I profiled blogger.com earlier, at least with Firefox the problem seemed mostly related to stippled fills, not compositing, so I'm not sure this is really (still) the same problem. Can you provide your profiling data?
Comment 9 Alex Deucher 2008-12-03 00:26:15 UTC
is this still an issue with a more recent xserver/driver?
Comment 10 Albert Astals Cid 2008-12-04 14:50:50 UTC
What you would consider a more recent xserver/driver combo?
Comment 11 Alex Deucher 2008-12-04 18:54:05 UTC
xf86-video-ati 6.9.0 or git master, xserver 1.5 or newer.
Comment 12 Peter Kraus 2008-12-05 11:16:20 UTC
Seems fine here, on ATI Mobility Radeon X1400. The CPU requirements are at about 10% on my Core 2 Duo T7200. On the blogger.com page.


pk@tull:~::pacman -Qi xorg-server
Name           : xorg-server
Version        : 1.5.3-2

pk@tull:~::pacman -Qi xf86-video-ati
Name           : xf86-video-ati
Version        : 6.9.0-5
Comment 13 Albert Astals Cid 2008-12-05 15:15:11 UTC
Works for me, great work :-)

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.