←back to thread

Making TRAMP faster

(coredumped.dev)
226 points celeritascelery | 3 comments | | HN request time: 0.618s | source
1. b0a04gl ◴[] No.44358513[source]
something i noticed while debugging tramp perf half the lag isn't tramp, it's elisp codepaths calling sync ops assuming they're cheap. i saw vc-git-root firing on every bufferlist switch because some mode wants to update a badge or refresh a modeline. none of it's aware that the path is remote
replies(2): >>44359050 #>>44359106 #
2. celeritascelery ◴[] No.44359050[source]
That's exactly it. TRAMP itself works fine, but some packages that are only tested on local machines use a bunch of shell calls that are not really needed (i.e. They could cache the result).
3. ParetoOptimal ◴[] No.44359106[source]
A lot of times with emacs you can disable the modeline and get performance improvements because frequent updates happen and arent cached.

Well behaved mode line items typically update a variable periodically so blocking never happens.