[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: Profiling X, KDE, KWin and friends...

Yesterday, I tried hooking valgrind --trace-children with the startkde executable but the window manager (kwin) failed to start after waiting for almost 20min. It was really a slow process.


On Thu, Apr 16, 2009 at 9:52 AM, Ilyes Gouta <ilyes gouta gmail com> wrote:

Alright, thank you guys for the information. I'm gonna try sysprof out, it looks like it's THE tool I'm looking for!

Ilyes Gouta.

2009/4/15 Adam Jackson <ajax redhat com>
On Wed, 2009-04-15 at 12:12 -0700, Adam Williamson wrote:
> On Wed, 2009-04-15 at 12:12 +0100, Ilyes Gouta wrote:
> > Hi,
> >
> > I'm running Fedora 10 on my old Thinkpad R50e, which has a Pentium M
> > and an intel 855GM graphics card and I'm not happy with the
> > performance of KDE, Kwin, Xserver and al. where sometimes, I can
> > clearly see a given window getting its background cleared and its
> > content redrawn slowly. I remember I didn't have annoying artifacts
> > when I was running Windows, three years ago on the same machine. I
> > don't have composition enabled or any fancy thing in my KDE setup. So
> > basically, I'm asking if you guys know about any profiling tool that
> > would enable me to see where the system is spending its time,
> > especially when rendering the desktop.
> I'm fairly sure performance regressions are one of the known issues with
> older Intel chips (pre-i915, basically) on the newer versions of the
> intel driver, so you may want to check redhat and freedesktop bugzillas
> first to see if anyone's reported similar problems.

There's at least one known problem with 855 and 865, which is that we
don't quite have the cache flushing logic right yet (partly chipset
bugs, partly inadequate CPUs on those boards), which means you end up
invalidating all write-back mappings on every buffer you ask the GPU to
execute (which means cache flush, which means a lot of memory write
traffic).  Not the fastest thing ever.

If this is what you're hitting, sysprof would show you spending an
inordinate amount of time in i915_gem_execbuffer() in the kernel.

sysprof is an _awesome_ tool, by the way.

- ajax


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]