[CEDET-devel] Analyzer speed boost
Brought to you by:
zappo
From: Eric M. L. <er...@si...> - 2008-02-08 04:28:45
|
Greetings, I checked in a nice speed boost for smart completion today. First, there is a new file semantic-elp.el, which is an interface between semantic and elp (elisp profiler). I used it to discover some serious speed issues w/ CEDET. I ran it against some code at work. This would be the code I occasionally mention I can't use semantic with for various reasons. Lets look at a subset of some of the original numbers from the output semantic-elp generates. If we take the big hitters, the numbers are: 5.0 sec (include path) 409 sec (typcache build) .3 sec (calc scope) 67 sec (calc context) .05 sec (do completions) Total: about 481.3 sec, or 8 minutes. Now lets look at after an optimization to the typecache. 6 sec (include path) .09 sec (typecache) .2 sec (scope) 65 sec (analyze) .0003 sec (completion) 71.2 sec, or 1.18 min That's over 7 minutes faster! Wow! Just as a note: This is test run is for the FIRST RUN, when semantic is still bootstrapping the various caches. After things are cached, the first 3 numbers in the two above tables are effectively 0. The profiler is showing off some stuff in the analyzer that might lead to more optimizations. Things are looking up! The above changes are in CVS now. Enjoy. Eric -- Eric Ludlam: er...@si... Siege: www.siege-engine.com Emacs: http://cedet.sourceforge.net |