Opened 17 years ago
Last modified 16 years ago
#76 new enhancement
Slime (swank) fuzzy completion very slow
| Reported by: | ehuelsmann | Owned by: | somebody |
|---|---|---|---|
| Priority: | major | Milestone: | unscheduled |
| Component: | other | Version: | |
| Keywords: | performance | Cc: | |
| Parent Tickets: |
Description
In a mail to the development list, Anton Vodonosov writes about the relative speed of ABCL, CCL and Clisp on slime fuzzy completion.
ABCL is by far the slowest.
Change History (3)
comment:1 by , 16 years ago
comment:2 by , 16 years ago
Hottest code - data collected with the hot spot profiler:
24.1 65 SWANK::FUZZY-CONVERT-MATCHING-FOR-EMACS 26.3 71 SOME 35.9 97 SWANK::COMPUTE-MOST-COMPLETIONS 45.9 124 SWANK::RECURSIVELY-COMPUTE-MOST-COMPLETIONS 48.5 131 SWANK::COMPUTE-HIGHEST-SCORING-COMPLETION 71.5 193 SWANK::FUZZY-FIND-MATCHING-SYMBOLS 85.2 230 SWANK::FUZZY-GENERATE-MATCHINGS 100.0 270 SWANK::FUZZY-COMPLETION-SET
Evaluate this form to reproduce:
(progn
(prof:with-profiling ()
(let ((swank::*buffer-package* *package*))
(swank::fuzzy-completions "de" 'cl-user)))
(prof:show-hot-counts))
comment:3 by , 16 years ago
| Keywords: | performance added |
|---|---|
| Milestone: | → unscheduled |
Unscheduled. Waiting for someone to do more research; the hot-spot list still looks roughly the same.
Note:
See TracTickets
for help on using tickets.
To reproduce, in ABCL run (inside the slime/ directory):
For clisp, run in the same directory, with these commands:
The form to be executed (and hence profiled) is:
Using (TIME ...) on the given form, ABCL returns 0.2 seconds, while clisp returns 0.08 seconds. Clearly, clisp still is a lot faster, but I'd be surprised if ABCL is still "intolerably slow".