我分别测试了 alacritty 、st 各 50 个,下面是 systemd 统计到的内存、cpu 使用量。 (其中 cpu 使用时间是全部启动完查到的)
看内存、cpu 使用,我一点都不觉得值得用 alacritty 啊。我跟风用了 3 年有
全部 50 个实例的资源使用
● alacritty.slice - Slice /alacritty
Loaded: loaded
Active: active since Sat 2022-10-01 16:44:10 CST; 1min 41s ago
Until: Sat 2022-10-01 16:44:10 CST; 1min 41s ago
Tasks: 782
Memory: 5.8G
CPU: 17.592s
CGroup: /user.slice/user-1000.slice/[email protected]/alacritty.slice
├─run-r0247a080956e4b4a83f20f6a9c648b3f.service
│ ├─300473 /usr/bin/alacritty
│ └─300704 /bin/zsh
● st.slice - Slice /st
Loaded: loaded
Active: active since Sat 2022-10-01 16:46:41 CST; 2min 10s ago
Until: Sat 2022-10-01 16:46:41 CST; 2min 10s ago
Tasks: 100
Memory: 307.4M
CPU: 9.463s
CGroup: /user.slice/user-1000.slice/[email protected]/st.slice
├─run-r0011419f2a6f4dd9aa777fe36368ce74.service
│ ├─302282 /usr/bin/st
│ └─302305 /bin/zsh
单个实例的资源使用
● run-r0247a080956e4b4a83f20f6a9c648b3f.service - /usr/bin/alacritty
Loaded: loaded (/run/user/1000/systemd/transient/run-r0247a080956e4b4a83f20f6a9c6>
Transient: yes
Active: active (running) since Sat 2022-10-01 16:44:10 CST; 3min 44s ago
Main PID: 300473 (alacritty)
Tasks: 17 (limit: 38085)
Memory: 126.1M
CPU: 321ms
CGroup: /user.slice/user-1000.slice/[email protected]/alacritty.slice/run-r0247a0>
├─300473 /usr/bin/alacritty
└─300704 /bin/zsh
● run-r0011419f2a6f4dd9aa777fe36368ce74.service - /usr/bin/st
Loaded: loaded (/run/user/1000/systemd/transient/run-r0011419f2a6f4dd9aa777fe3636>
Transient: yes
Active: active (running) since Sat 2022-10-01 16:48:36 CST; 2min 18s ago
Main PID: 302282 (st)
Tasks: 2 (limit: 38085)
Memory: 6.0M
CPU: 174ms
CGroup: /user.slice/user-1000.slice/[email protected]/st.slice/run-r0011419f2a6f4>
├─302282 /usr/bin/st
└─302305 /bin/zsh
启动脚本
for _ in {1..50}; do
systemd-run --user --slice st /usr/bin/st
done
1
haoliang OP 忘了加上它们各自的进程、线程数量
``` PID SPID TTY STAT TIME COMMAND 304097 304097 pts/18 Sl+ 0:00 alacritty 304097 304098 pts/18 Sl+ 0:00 alacritty 304097 304099 pts/18 Sl+ 0:00 alacritty 304097 304100 pts/18 Sl+ 0:00 alacritty 304097 304101 pts/18 Sl+ 0:00 alacritty 304097 304102 pts/18 SNl+ 0:00 alacritty 304097 304103 pts/18 Sl+ 0:00 alacritty 304097 304104 pts/18 Sl+ 0:00 alacritty 304097 304105 pts/18 Sl+ 0:00 alacritty 304097 304106 pts/18 Sl+ 0:00 alacritty 304097 304107 pts/18 Sl+ 0:00 alacritty 304097 304108 pts/18 Sl+ 0:00 alacritty 304097 304109 pts/18 Sl+ 0:00 alacritty 304097 304111 pts/18 Sl+ 0:00 alacritty 304097 304112 pts/18 Sl+ 0:00 alacritty 304097 304113 pts/18 Sl+ 0:00 alacritty ``` ``` PID SPID TTY STAT TIME COMMAND 304355 304355 ? S 0:00 st ``` |
2
cest 2022-10-01 17:16:19 +08:00
没有,还吃 vram ,训练时可能就少了这点 vram 而 oom 炸了
|
4
billlee 2022-10-01 17:54:23 +08:00 via Android
要看和谁比,比 gnome-terminal 和 konsole 是不值得,但比 windows terminal 那可是快多了
|
5
hez2010 2022-10-01 18:36:12 +08:00 via Android 1
终端的 GPU 加速效果不是通过内存和 CPU 占用来衡量的,而是展现在了大幅提升具有复杂的多彩色的文本排版和渲染、文字动画、命令行 UI 性能、避免闪烁和提高帧数上的。
|
6
haoliang OP 我还真通过 `intel_gpu_top` 看了这俩终端的 gpu 使用,在我粗略的测试中`while true; do echo emoji; sleep n; done`, alacritty 、st 的第一项分别有 90 上下%、10 上下% (懒得再测了)。
``` Render/3D 1.89% |██▌ | 0% 0% Blitter 0.00% | | 0% 0% Video 0.00% | | 0% 0% VideoEnhance 0.00% | | 0% 0% ``` |
7
haoliang OP 还是没忍住,补一下相关统计数据。输出:`while true; do echo '😃 abc 😋 def'; sleep 0.1; done`
alacritty ``` intel-gpu-top: Intel Coffeelake (Gen9) @ /dev/dri/card0 - 955/ 955 MHz; 21% RC6; 9.85/15.07 W; 118 irqs/s IMC reads: 11327 MiB/s IMC writes: 10445 MiB/s ENGINES BUSY MI_SEMA MI_WAIT Render/3D 76.43% |██████████████████████████████████████████████████████████████████████████████████████████████████▋ | 0% 0% Blitter 0.00% | | 0% 0% Video 0.00% | | 0% 0% VideoEnhance 0.00% | | 0% 0% ``` st ``` intel-gpu-top: Intel Coffeelake (Gen9) @ /dev/dri/card0 - 106/ 107 MHz; 84% RC6; 0.41/ 2.78 W; 130 irqs/s IMC reads: 1341 MiB/s IMC writes: 922 MiB/s ENGINES BUSY MI_SEMA MI_WAIT Render/3D 12.50% |████████████████▎ | 0% 0% Blitter 0.00% | | 0% 0% Video 0.00% | | 0% 0% VideoEnhance 0.00% | | 0% 0% ``` 不过实话实说,我不懂这输出的具体含义; mpv 硬件解码时,render 这项用的不高,主要是 video 这项。所以不知道是不是我没配置好 |
8
Owenjia 2022-10-01 19:20:36 +08:00
印象中 Alacritty 作者营销功底比较强,看到过不少人吐槽。
lwn 上也有过评测文章,Alacritty 的表现也并不出色。过去比较久了,但有句话现在看起来似乎并没有过时: > Alacritty doesn't seem to live up to his "fastest terminal emulator in existence" claims 参考: https://lwn.net/Articles/751763/ |
9
yuuko 2022-10-01 19:49:15 +08:00 via Android
kitty 呢
|
10
haoliang OP @Owenjia 链接不错,发这个帖子前我也粗略看过,不过再次仔细看下来,收获不小。当初没提它主要是因为它没提这个 gpu accelerated 特性。
我临时试用了下 gnome - terminal ,它针对多实例的情况做了优化 —— 会自动转为 client 、server 模式;不过似乎它不支持 fallback fonts ,设置我常用的字体后,emoji 没法显示。 不好意思,我标题起大了。我离不开 tmux ,所以不打算看 kitty 、wert ? m 。而且我已经把用到的脚本贴出来了…… |
11
yzwduck 2022-10-01 21:24:22 +08:00 1
GPU-accelerated terminal 在高分辨率屏幕下可能更省 CPU 资源。
我用 sway 屏幕分辨率 4k 缩放 2x ,草率测试在 Foot/Alacritty 下运行 htop 并上下滚动,发现前者的 CPU 比后者要高数倍。 |
12
Owenjia 2022-10-01 22:04:12 +08:00
@haoliang
我日常使用 yakuake (konsole) 多一点,偶尔会用 kitty 。 没有做过量化测试,但使用体验上的确是 kitty 响应更快一点,上面的回复只是觉得 alacritty 作为一个并不算很优秀的实现可能代表不了这一类有 GPU 加速的终端。 (不常用 kitty 是因为他的默认 TERM 是 xterm-kitty ,经常需要 ssh 到其他机器会有一点不方便。 > gnome-terminal ... 不支持 fallback fonts fallback fonts 感觉大概可以通过 fontconfig 来解决? > 离不开 tmux ,所以不打算看 kitty 、wez 这个应该不冲突吧,不用 kitty 的高级特性只把它当成终端在里面用 tmux 体验也还可以。 (不过我记得看过一篇文章,tmux 好像会影响一些速度(?) |
13
secondwtq 2022-10-01 22:08:10 +08:00 1
大概一两年之前试着用过 alacritty 吧,感觉会出现一些肉眼可见的卡顿,可能是 UHD 630 太弱了
|
14
cest 2022-10-01 22:25:51 +08:00
各种用 gpu 加速的 term
结果都没有 mobaxterm 的 keyword highlight 开个 mc 遇上 cjk half/full width path/filename 也容易出错 |
15
haoliang OP > sway
哦,谢谢分享,我还没迁移到 wayland 上,不过我这也是 4k 。 主要是半年前卡在部分程序需要 xwayland 才能工作,也就算了。不知道中文输入法( fcitx5 )现在还需要借助 xwayland 运行吗?(哈哈,其实我自己试一下就知道了,不过如果有人指点能少走些弯路呢) > gnome - terminal …… fontconfig 我有设置,不过 gnome-terminal 确实没处理好 (在不设置字体的前提下,alacritty 、kitty 都能正常渲染)无所谓啦,恰好之前有人提到,我就顺带试用了一下; konsole 依赖太多, 令人望而却步 > tmux 好像会影响一些速度? 哈哈,我之前也有开帖问过: https://v2ex.com/t/872763 。那时我也萌生过转到 emacs 的想法,直接跟目前这套 terminal+tmux+nvim 工作流拜拜,呵呵 |
17
wizardyhnr 2022-10-02 08:10:51 +08:00
alacritty 好像说虽然是 rust 写的,但是写得很挫
|
18
DTCPSS 2022-10-02 09:54:01 +08:00 via iPhone
Windows Terminal 之前为了提高高刷新率控制台应用的性能还做了一些图形上的 cache
|
19
dlolimiuku 2022-10-03 20:47:53 +08:00
除了资源暂用,启动速度也是个大坑,之前对比了 alacritty kitty 和 st 。st 比它们都快至少 2 倍。
|
20
webcape233 2022-10-04 08:41:56 +08:00 via iPhone
呃你们一个终端工具也玩这么花吗
|