OutputModel performance
Kevin Funk
krf at gmx.de
Wed Feb 6 12:25:17 UTC 2013
Hey,
I recently noticed that I get serious UI lockups when running a 'make install'
job inside KDevelop for larger projects such as kdelibs. 'make install' here
may produce roughly ~4500 lines of output in just a few seconds.
All these lines are parsed in the action/error filter in the output view tool.
I suspected that using QRegExp there in the main thread is a serious
bottleneck which I tried to evaluate using callgrind. Attached [1] is a
callgrind run that had instrumentation enabled just before the make job was
started.
Callgrind isn't really useful to tell if this will cause UI hickups, of
course. It just shows that there are *a lot of* calls to QRegExp::indexIn(),
namely ~145000, for (just) 4500 lines of output.
So, the question here:
- Did anyone of you guys experience similar issues just to begin with?
- Do you think it makes sense to optimize that?
E.g. move the regexp logic out of the main thread?
Greets
[1] http://krf.kollide.net/files/images/outputmodel-performance.png
--
Kevin Funk
More information about the KDevelop-devel
mailing list