关于Emacs最近几个版本在windows上的体验变化

我自己在Emacs 26和27停留了很多年,当时感觉emacs启动慢,运行中主要是magit卡,其他还行。

但是不比不知道,后来尝试emacs 29, 30, 31, 感觉启动速度一个比一个慢,启动时间都比emacs 27多了几倍。怎么被负优化成这样了? :grinning_face:

没有配置文件的情况下也是一样。尤其开机第一次启动,时间特别长,第二次启动,时间也明显不如emacs 27

我记得从28还是多少引入了新技术,加快启动速度的, 怎么到windows上反倒倒退了好几步? :grinning_face:

-----------------------------更新

增加无配置启动对比视频(注意:视频中鼠标变忙那一刻已经双击了)

http://118.195.131.49:8000/public_files/20260707_002239.mp4

视频中看30那延迟好像是安装在机械硬盘一样,实际两者都在固态硬盘,在同一个分区。

两者都是从gnu官方网站下载的安装包解压安装的。

有没有可能你的windows也一样升级了,还是强制升,同样引入各种负优化,论坛前几天好像还有个帖子讲同样配置使用win11在硬件配置更好的情况下比win10慢得多

当然是同系统比较的,俩版本都安装了,另外我的windows 10

有没有你的配置和具体的变化数据啊,让大家可以帮你分析

我专门比较了不加载配置的情况,和加载配置结果类似。下次我重启电脑后可以拍个对比视频。

我怎么觉得 windows 上emacs 体验越来越好了。

2 个赞

视频有唔用啊,上性能监测工具!

试试emacs31

我的经验是尽量使用autoload和timer延迟加载不会马上用到的包.

新版Emacs内置包可能是越来越大的, 所以启动时载入这些内置包的时间会抵销emacs在启动时间上的优化.

2 个赞

magit主要是有大量diff文件的操作 可以自己优化一下 我自己在Windows上用emacs感觉是编译的机器码问题 机器码选项给关闭了 第一次打开emacs会快很多 不知道能不能给你参考 magit的优化可以看我的这个

magit-prime 要快那么一丢丢

Emacs30,31快不少啊,尤其是WIndows上提升挺明显的

一楼更新了启动对比视频。 @wsug @mezi @redguardtoo @zdn @seagle0128 @gynamics

视频中看30那延迟好像是安装在机械硬盘一样,实际两者都在固态硬盘,在同一个分区

windows版几乎不怎么用,效率太低了。一般用wsl版或者其他工具,没那么在意,只是对比太明显了,讨论一下。

28到31,都试过,印象中都不如27, 所以27一直留着,当然windows版用的很少

机器码选项是什么?

至于magit,我在用magit 1.x版本,性能强太多了,最近用AI给它升级到兼容新版本emacs,用起来很爽。即使在linux下,1.x也比3以上版本快很多。

机器码选项就是把.el文件编译.eln 这个问问ai吧 我忘记了

我自己编译了emacs 把native-compile什么的选项关闭了以后 冷启动最慢是2秒钟 我自己的配置加载现在是1.2左右

不知道了 我目前的这个改法极大的给magit提速了 它一打开不会马上对diff文件 要diff哪个文件就去单独diff 相当于懒加载了 我很满意了

这个让我想起来了,1.x就是这么做的。当年被3.x卡死过,看了下这部分的实现,1.x的作者和3.x的维护者好像不是同一批人