kdevelop 4 parsing on opensuse 11.2 is extremely slow for linux kerenl project

Milian Wolff mail at milianw.de
Mon Apr 5 01:01:19 UTC 2010


On Friday 02 April 2010 14:50:30 Christoph Bartoschek wrote:
> Am Freitag 02 April 2010 schrieb Christoph Bartoschek:
> > I've also tried to import the linux kernel tree. However I do not see
> > that parsing is slow. I would say that the problem lies in the
> > IncludePathResolver. My observations are:
> > 
> > 1. During importing kdevelop only takes 10-25% CPU time.
> > 2. The IncludePathResolver changes the timestamps of the files all the
> > 
> >  time and it seems as if a FileSystemWatcher is fired because of the
> >  changes within kdevelop. (Why is the resovler not using the option
> >  --assume-new provided by make? At least if the make is GNU make)
> 
> I've just seen in the code that there is code that is able to use the --
> assume-new option. However the timestamps are still always updated. Why is
> this not enabled?
> 
> I've made the following experiment. I've disabled the IncludePathResolver:
> it always returns false.
> 
> Now the whole linux kernel is initialy parsed in 15 minutes on my machine.
> I've tried to load it with the Resolver enabled but gave up after 2 hours
> and 5% loaded.

With my recent commits I was able to parse 10.000 files (roughly 1/3) of the 
linux kernel in 9.5 minutes, so it would take roughly 30min now for me.

Also note that the IncludePathResolver _is_ useful here since the Kernel uses 
Include Paths for internal structures, like
-I/home/development/projects/linux-2.6.34-rc3/arch/x86/include

for include/linux/ioc3.ko

So just turning it off will lead to less parsing / improper DUChain.
-- 
Milian Wolff
mail at milianw.de
http://milianw.de
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20100405/d788e0f2/attachment.sig>


More information about the KDevelop-devel mailing list