Hi Dmitry, thanks for the suggestions. I will prepare some benchmarks using new Emacs and send the results. I already did some statistics with elp during development, but I suspect that the numbers are not precise. I am curious which improvements will be the fastest :) Regards, Dan On Wed, Nov 21, 2012 at 4:37 AM, Dmitry Gutov wrote: > Daniel Skarda writes: > > Hey Daniel, > > Like Leo said, please provide some numbers. > > A comparison to the current trunk would be best, since it contains an > additional optimization compared to the emacs-24 branch. > > Here my test setup from the relevant discussion: > http://debbugs.gnu.org/cgi/bugreport.cgi?bug=12796#47 > > --Dmitry > > > I like to use ido mode for everything, including very large lists (like > M-x or > > info). Unfortunately ido is not suitable for such lists. On my old > notebook, > > performance is not amazing, so I took the challenge and spend some time > with > > profiler. > > > > I improved the performance in several steps: > > > > - inlined several functions > > - disabled ido-case-fold for some completions (eg commands) > > - prunning collections based on character bitmaps > > - caching character bitmaps during completion or for same completions > > - caching intermediate completion lists when adding new characters > > > > You can view my changes on github: > > > > - https://github.com/orfelyus/ido-speed-hack > > - https://github.com/orfelyus/ido-mode-el > > > > - (and optionally) https://github.com/orfelyus/ido-better-flex > > > > ido-speed-hack includes large changes (bitmaps) while ido-mode-el > includes minor > > changes to ido.el > > > > The changes made huge speed improvements on my notebook and ido does not > feel > > sluggish even with very large lists. > > > > Could you please test my improvements? I would appreciate any feedback. > > Dan > > > > ps: I am not subscribed to the mailing list, please keep me in Cc >