oprofiling Xorg

Dennis Jacobfeuerborn d.jacobfeuerborn at conversis.de
Thu Dec 8 18:13:10 PST 2005


Hi,
I've been playing with oprofile in order to find out why Xorg seems to be 
so slow with my r300 based Radeon 9500pro. I'm doing the profiling on an 
up-to-date Fedora Core Rawhide system with modular x installed (with the 
Composite extension enabled) and this is what the device section in 
xorg.conf looks like:

Section "Device"
         Identifier  "Videocard0"
         Driver      "radeon"
         VendorName  "Videocard vendor"
         BoardName   "ATI Radeon 9500 Pro"
         Option      "AccelMethod" "exa"
EndSection

For the test I simply opened some applications on the desktop, started 
oprofile and then moved the Firefox window back and forth across the 
desktop for a few seconds. Here what a simple "opreport 
--exclude-dependent" says:

CPU: CPU with timer interrupt, speed 0 MHz (estimated)
Profiling through timer interrupt
           TIMER:0|
   samples|      %|
------------------
      2126 34.0106 libfb.so
      2071 33.1307 vmlinux-2.6.14-1.1726_FC5
       311  4.9752 Xorg
       281  4.4953 libc-2.3.90.so
       270  4.3193 radeon
       161  2.5756 libgdk-x11-2.0.so.0.800.8
       151  2.4156 libglib-2.0.so.0.900.0
       150  2.3996 libgobject-2.0.so.0.900.0
       127  2.0317 libcairo.so.2.2.3
       127  2.0317 libgdk_pixbuf-2.0.so.0.800.8
        63  1.0078 libgtk-x11-2.0.so.0.800.8
        59  0.9438 libpthread-2.3.90.so
...

Seeing that libfb.so seems to swallow most of the time I did a "opreport -l 
/usr/lib/xorg/modules/libfb.so" with the following result:

CPU: CPU with timer interrupt, speed 0 MHz (estimated)
Profiling through timer interrupt
samples  %        symbol name
1519     71.4487  fbCopyAreammx
195       9.1722  fbRasterizeEdges
143       6.7262  fbSolid
105       4.9389  fbSolidFillmmx
85        3.9981  fbCompositeSolidMask_nx8x8888mmx
21        0.9878  fbCompositeSrcAdd_8000x8000mmx
14        0.6585  fbCompositeSrc_8888x8888mmx
10        0.4704  fbComposite
...

Is Xorg supposed to use fbCopyAreammx instead of some hardware assisted 
blitting function with my configuration? I'm installing the kernel 
debuginfo package right now to see where the other 33% of performance are 
going but I wonder if there is something about my configuration that slows 
things down so significantly.

Regards,
   Dennis



More information about the xorg mailing list