KDevelop PHP Performance Improvements

After moving my blog this is now the first post aggregated on planetkde.

It has been quite some time since my last contributions to KDevelop - I got motivated by working colleges who where starting to use other IDEs (phpStorm, eclipse) as they got annoyed by various bugs in KDevelop.

One big thing is performance - when working on larger projects during initial parsing things get laggy and slow. (eg. when opening code completion)
Our use case is koala framework + zend framework which consist of about 6500 php files.

Profiling showed that the main problem is the large number of included file - but luckily the DUChain already has an option to cache that - which I basically just activated.

Benchmarks

Ok, all fine - but what about actual numbers?

This graph shows time needed (in seconds) for initial parsing of ~6500 files. (lower is better)

This graph shows time needed (in seconds) for checking up to date of ~6500 files. (lower is better)

(Time is measured using duchainify, a small cli helper tool for kdevelop for testing parsing)

You'll see that for this use case this cache really brings a large performance boost!

This entry was posted in KDE, KDevelop by Niko Sams