Profiling data for qmake manager

Andreas Pakulat apaku at gmx.de
Mon Nov 20 10:45:14 UTC 2006


On 20.11.06 10:39:56, Stephan Diederich wrote:
> 2006/11/20, Andreas Pakulat <apaku at gmx.de>:
> >Hi,
> >
> >as opening the Qt4 src takes quite some time here I ran valgrind with
> >callgrind on it. As mdd and eventually adymo wanted to have a look at
> >it, I'm posting here the URL where to fetch the profile. Everybody
> >interested is invited to have a look at the profile and the source and
> >make suggestions for improvements.
> >The data is at: www.apaku.de/vardata/kdevelop.callgrind.bz2
> 
> the problem with the profile ist, that's it is not covering the full
> startup phase. For example it doesn't reach the insertion into the
> Listviews.

Huh? At least on the shell-output I saw that
QMakeScopeItem::buildSubTree was executed for a number of Scope's (I saw
4 messages saying it wouldn't be created, there are in full about 10
invalid Scopes in the tree after parsing). Which would mean the
overview-Listview should've been populated to some extent as well as the
groups should've been filled.

> Attached are patches for the big guys in the profile you attached.
> Both of them reduce/eliminate copying of QListViews and a conversion
> >from QValueList to QListView. But this gives only about 20% reduces
> startup time for me.
>
> The patch for QMakeDefaultOps can be applied, the patch for Scope is a
> matter of taste, I think.

I don't like returning references from Functions, so I'm not going to do
that atm. The other patch for scope does something I should've done
for a long time, it does contain a small error though...

Andreas

-- 
You are farsighted, a good planner, an ardent lover, and a faithful friend.




More information about the KDevelop-devel mailing list