[Eric] What am I doing wrong in 4.0.1 (speed issues)?

Detlev Offenbach detlev at die-offenbachs.de
Wed Aug 8 17:38:07 BST 2007


On Montag, 6. August 2007, Andreas Pakulat wrote:
> On 06.08.07 17:04:04, Mike C. Fletcher wrote:
> > Hi all,
> >
> > I've been using Eric3 for quite a long while now (very happy with it).
> > Upgraded my machines to Eric4 (4.0.1) last week (Eric3's dependencies
> > don't build for me any more) and I'm seeing extremely slow operations
> > throughout the interface.  That is, expanding a tree branch in the
> > project browser takes 5-6s, loading a medium-sized project takes 35s+. 
> > Scrolling through a file is much slower.  Typing is noticeably slower. 
> > Same project took maybe 3-4 seconds on Eric3.  Tree expansion is almost
> > instantaneous there.
> >
> > I've disabled most of the typing-enhancement features, so they are not
> > likely the source of the problem.  I'm running on a ridiculously powerful
> > machine (dual core AMD 4800+, though Eric only seems to use the one core)
> > on Gentoo Linux on a KDE 3.5 desktop using stock KDE (i.e. no Beryl). 
> > There's 4GB of RAM and nothing else of note running on the box.  I'm
> > seeing the same slowdown (but more painfully) on an older P4 laptop using
> > i386 (instead of amd64), so it's not likely a 64-bit issue.
>
> Yes, although the issue is much more present on windows than on linux
> here. My 1.4GHz laptop only shows real performance problems on file
> tree's that have really large number of entries (/usr/share,
> /usr/share/doc). On my own relatively small projects and also eric4
> sources I don't have a real problem (although its not really snappy).
>
> > So, my question is basically; is there some known issue where I can flip
> > some switch and get back to Eric3/Qt3 performance levels?  If not, is
> > there a reasonable way to profile Eric in order to find out what's taking
> > all the time?
>
> Well, one way to make eric4 more snappy is if the fetching of the
> directory entries wouldn't be done in the GUI thread, but a separate
> thread and then this thread would send the data to the GUI thread (to
> create the model items) every once in a while, so you see a directory
> populating.

Eric4 actually just populates the model with all the files contained in the 
project file. Everything else (like parsing a file to show classes and 
members) is done on-demand.

>
> Also I suspect (no evidence, neither hard numbers, nor tryout with
> sample programs) that PyQt4 is not fast enough to handle the many
> qmodelindex conversions needed for Interview.
>

I noticed some slow downs as well when I started to port eric4. Especially the 
drawing routines of Qt4 seem to be slower than in Qt3. Right now I have no 
idea on how to get a noticeable speedup. Any suggestions or even better 
patches are very welcome.

Regards,
Detlev
-- 
Detlev Offenbach
detlev at die-offenbachs.de


More information about the Eric mailing list