[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#41423: 27.0.91; eshell file completion in tramp dir is slow (3 minut
From: |
Gregory Heytings |
Subject: |
bug#41423: 27.0.91; eshell file completion in tramp dir is slow (3 minutes) [regression on pretest] |
Date: |
Tue, 1 Sep 2020 13:50:16 +0200 (CEST) |
User-agent: |
Alpine 2.22 (NEB 394 2020-01-19) |
Would it help to profile the completion process in this use case using
the built-in Lisp profiler?
No, because the bug is not about cpu or mem usage, but about doing
something useless that just takes time (without eating much resources).
A much better way to profile this is to use:
(defvar pcomplete-completions-at-point-time 0)
(defun around-pcomplete-completions-at-point (fun)
(message "calling pcomplete-completions-at-point")
(setq pcomplete-completions-at-point-time (float-time))
(let ((ret (funcall fun)))
(message "returning from pcomplete-completions-at-point, call took %.2f
seconds" (- (float-time) pcomplete-completions-at-point-time))
ret))
(advice-add 'pcomplete-completions-at-point :around
#'around-pcomplete-completions-at-point)
(let ((default-directory "/ssh:user@host:~/")) (eshell))
This will print:
calling pcomplete-completions-at-point
returning from pcomplete-completions-at-point, call took 0.00 seconds
calling pcomplete-completions-at-point
returning from pcomplete-completions-at-point, call took 0.00 seconds
calling pcomplete-completions-at-point
returning from pcomplete-completions-at-point, call took N seconds
The value of N depends on the speed of your connection. On a fast
connection it will be something around 50, on a slower one something
around 100. With a local directory (that is, without let-binding
default-directory before entering eshell) it depends on your machine. On
a fast one it will be something around 0.10, on a slower one something
around 0.50.
Note again that this third call to pcomplete-completions-at-point does
nothing useful. It just build a list of all possible commands, and throws
it away.
bug#41423: 27.0.91; eshell file completion in tramp dir is slow (3 minutes) [regression on pretest], Stefan Monnier, 2020/09/01
- bug#41423: 27.0.91; eshell file completion in tramp dir is slow (3 minutes) [regression on pretest], Gregory Heytings, 2020/09/01
- bug#41423: 27.0.91; eshell file completion in tramp dir is slow (3 minutes) [regression on pretest], Stefan Monnier, 2020/09/01
- bug#41423: 27.0.91; eshell file completion in tramp dir is slow (3 minutes) [regression on pretest], Gregory Heytings, 2020/09/02
- bug#41423: 27.0.91; eshell file completion in tramp dir is slow (3 minutes) [regression on pretest], Michael Albinus, 2020/09/02
- bug#41423: 27.0.91; eshell file completion in tramp dir is slow (3 minutes) [regression on pretest], Drew Adams, 2020/09/02
bug#41423: 27.0.91; eshell file completion in tramp dir is slow (3 minutes) [regression on pretest], Stefan Monnier, 2020/09/02