Hi Dan,

thanks for your efforts - i agree with your analysis - i have forwared your
posting to the cedet-mailing list, because i hope, Eric oder david can give
us some pointers how to solve the problems...

Eric, David, thoughts?


-----Ursprüngliche Nachricht-----
Von: ecb-list-admin@lists.sourceforge.net im Auftrag von Dan Debertin
Gesendet: Fr 19.08.2005 16:13
An: ecb-list@lists.sourceforge.net
Betreff: [ECB-list] Re: Analyser performance

Okay, I have added some basic caching to ecb-analyse-buffer-sync. It
caches lists of possible completions, keyed on partial symbol
names. This did not immediately improve performance, though it did get
slightly better as the cache began to be populated. Here are the
problems, though:

1. Cache coherence. We have no way to tell if the list of possible
   completions has changed since we cached an entry.

2. Have to write the cache out to disk between ECB sessions and read
   it in later. As the cache is simply a hash table, it shouldn't be
   too hard.

But the real kicker is no. 3: It isn't
semantic-analyze-possible-completions that's causing performance
problems, it's semantic-analyze-current-context! Profiling shows that
of the average 1.02 seconds it takes analyse-buffer-sync to run, 0.94
seconds are spent in semantic-analyze-current-context.

So I'm up against a wall. I don't know a lot about semantic internals,
but if there's a way to speed analyze-current-context up or use a more
lightweight function, I would like to know it.

Thoughts? Anyone?

Dan Debertin                             Unix Systems Admin/Programmer/DBA
Digital Library Development Lab          University of Minnesota Libraries

"A free society is one where it is safe to be unpopular."

SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
Ecb-list mailing list