Slow exaOffscreenAlloc ?

Zdenek Kabelac zdenek.kabelac at gmail.com
Mon Dec 8 03:32:39 PST 2008


Hi

Recently I've noticed that scrolling in firefox is getting very very
slow on some pages - especially those with some static background on
the sides of pages. So I've started oprofile - and to my surprise the
most of the time has been spent in two Xorg libexa functions:

Of course I could be completely wrong in my interpretation of these
oprofile results - from the fast look into the exa/exa_offscreen.c
it seems like a major time is spent in some loop going through
possible quite large list of offScreenAreas?

I'm running the latest fedora rawhide xorg-x11-server-Xorg-1.5.3-5.fc10.x86_64
X.Org X Server 1.5.3
Release Date: 5 November 2008
and linus-git kernel tree 2.6.28-rc7

Any ideas, solution ?

Zdenek


CPU: Core 2, speed 2200 MHz (estimated)
Counted CPU_CLK_UNHALTED events (Clock cycles when not halted) with a
unit mask of 0x00 (Unhalted core cycles) count 100000
samples  %        image name               app name                 symbol name
-------------------------------------------------------------------------------
35766    26.1526  libexa.so                Xorg           exaOffscreenAlloc
35766    100.000  libexa.so              Xorg           exaOffscreenAlloc [self]
-------------------------------------------------------------------------------
32389    23.6833  libexa.so                Xorg            exaOffscreenFree
32389    100.000  libexa.so             Xorg            exaOffscreenFree [self]
-------------------------------------------------------------------------------
13126     9.5979  libpixman-1.so.0.12.0    Xorg pixman_region_subtractO
13126    100.000  libpixman-1.so.0.12.0  Xorg pixman_region_subtractO [self]
-------------------------------------------------------------------------------
6704      4.9021  libpixman-1.so.0.12.0    Xorg     pixman_op
6704     100.000  libpixman-1.so.0.12.0  Xorg     pixman_op [self]
-------------------------------------------------------------------------------
2         0.5435  intel_drv.so            Xorg                     _fini
133      36.1413  libexa.so             Xorg                     _fini
233      63.3152  libfb.so                 Xorg                    fbCreateGC
6229      4.5547  Xorg                     Xorg
dixLookupPrivate
6229     100.000  Xorg                  Xorg
dixLookupPrivate [self]
-------------------------------------------------------------------------------
909       0.6647  libmozjs.so              firefox             JS_CallTracer
909      100.000  libmozjs.so          firefox             JS_CallTracer [self]
-------------------------------------------------------------------------------
650      100.000  libc-2.9.so              oprofiled         __libc_start_main
792       0.5791  oprofiled                oprofiled
/usr/bin/oprofiled
792      100.000  oprofiled                oprofiled
/usr/bin/oprofiled [self]
-------------------------------------------------------------------------------



More information about the xorg mailing list