4 ms·
Emacs pauses are almost always due to some operation blocking in the main thread. It's pretty annoying and is mostly a consequence to a lot of things effectivel
by arghnoname 2y ago
Emacs pauses are almost always due to some operation blocking in the main thread. It's pretty annoying and is mostly a consequence to a lot of things effectively being single-threaded. Stock emacs doesn't do this very often, but third party packages that might do expensive tasks often do
- lysace 2y agoAh. A case of "don't do that, then".
- iLemming 2y agoa) Build it with native-compilation flag b) Use https://github.com/blahgeek/emacs-lsp-booster https://github.com/blahgeek/emacs-lsp-booster c) Tweak GC vars, see: https://emacs-lsp.github.io/lsp-mode/page/performance/ https://emacs-lsp.github.io/lsp-mode/page/performance/ d) Use plists for deserialization (described in the previous link) e) Learn how to use built-in profiler and don't hesitate to launch it, sometimes simply disabling some minor-mode in specific setting is all it takes f) Current state of Tree-sitter in Emacs is a mixed bag - for some modes you get huge improvements, for others it's the opposite. YMMV.