我有一台使用 Arch Linux 和 Ubuntu (16.04) 双启动的机器。
我最近开始使用Kakoune 文本编辑器,并注意到它的启动时间因我使用的操作系统而异。但是,我认为根本问题不是直接由 kakoune 引起的。
在启动时,kakoune 会运行一堆 shell 脚本来启用与 x11 和 tmux、git、语法高亮/颜色方案等的集成。可以禁用此功能以仅使用-n
标志加载“香草”编辑器。
命令:kak -e q
将启动 kakoune,运行所有启动脚本并立即退出。
在 Arch 上:
time kak -e q
需要1 秒
time kak -n -e q
(无 shell 脚本)在20 毫秒内完成。
在 Ubuntu 上:
time kak -e q
需要大约450 毫秒
time kak -n -e q
再次低于20 毫秒
在修剪脂肪并删除一些启动脚本后,我确实看到两个操作系统的改进与删除的数量成正比。
我用UnixBench运行了一些基准测试,发现两个系统之间的主要差异体现在“进程创建”和“shell 脚本”测试中。
shell 脚本测试测量每分钟进程可以启动并获得一组一个、两个、四个和八个 shell 脚本的并发副本的次数,其中 shell 脚本将一系列转换应用于数据文件。
这是相关的输出。“每秒循环数”中的单位越多越好:
Process creation (1 parallel copy of tests)
Arch: 3,822
Ubuntu: 5,297
Process creation (4 parallel copies of tests)
Arch: 18,935
Ubuntu: 30,341
Shell Scripts (1 concurrent) (1 parallel copy of tests)
Arch: 972
Ubuntu: 5,141
Shell Scripts (1 concurrent) (4 parallel copies of tests)
Arch: 7,697
Ubuntu: 24,942
Shell Scripts (8 concurrent) (1 parallel copy of tests)
Arch: 807
Ubuntu: 2,257
Shell Scripts (8 concurrent) (4 parallel copies of tests)
Arch: 1,289
Ubuntu: 3,001
如您所见,Ubuntu 系统的性能要好得多。
我已经使用不同的登录 shell、终端仿真器、重新编译 kakoune、删除不需要的软件来清理磁盘等进行了测试。我确信这是瓶颈。
我的问题是:我可以做些什么来进一步调查并提高 Arch Linux 系统的性能以匹配 Ubuntu?我应该考虑调整内核吗?
补充说明:
- 两个系统都使用相同类型的文件系统(ext4)
- 我倾向于更多地使用 Archlinux 系统,并且注意到性能随着时间的推移而下降
- Arch 位于 /dev/sda1 上,约为 200GB。Ubuntu 在 /dev/sda2,~500GB。1TB 硬盘。
- 拱门
uname -a
:Linux ark 4.14.13-1-ARCH #1 SMP PREEMPT Wed Jan 10 11:14:50 UTC 2018 x86_64 GNU/Linux
- Ubuntu
uname -a
:Linux sierra 4.4.0-62-generic #83-Ubuntu SMP Wed Jan 18 14:10:15 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
谢谢