使用 ZSWAP 改善低内存电脑的性能

发布于 2023-03-14 20:39:01 字数 2180 浏览 91 评论 0

我们都知道,当电脑物理内存不够操作系统使用时,操作系统会把部分物理内存的内容临时写入磁盘中,在物理内存足够后再从磁盘读回物理内存,这个过程叫做 SWAP。 然而由于磁盘的写入/读取速度要远远慢于内存的读写速度,因此 SWAP 的过程会严重拖慢电脑性能。当电脑内存足够,SWAP 交换数据较少的时候还没什么,但若电脑内存不足引起大量 SWAP,那电脑性能将会受到严重的影响,这时你会发现你的磁盘在不断地转动。

缓解 SWAP 的问题有两个方法,一个方法是想办法提高读写磁盘的速率,比如将机械硬盘换成 SSD 盘。 另一个方法就是想办法降低 SWAP 发生的概率。

Linux kernel 自 3.11 开始引入了 zswap 的功能,它能够将原本要交换到磁盘上的内存压缩,放到内存的一个内存池中,从而减少发生 SWAP 的概率。

启用 zswap

临时启用 zswap

临时启用 zswap 很简单,只需要

sudo echo 1|tee /sys/module/zswap/parameters/enabled

永久启用 zswap

若想每次重启都自动启用 zswap,则可以修改启动时的内核参数,添加上 zswap.enabled=1

  1. 编辑 /etc/default/grub,在 GRUB_CMDLINE_LINUX_DEFAULT 后加上 zswap.enabled=1
  2. 运行 grub-mkconfig -o /boot/grub/grub.cfg 重新生成 GRUB 配置文件
  3. 重启电脑

在 archlinux 上,我们还可以通过 systemd-swap 来帮我们开启 zswap

sudo pacman -S systemd-swap --noconfirm
sudo systemctl enable systemd-swap
sudo systemctl start systemd-swap

配置 zswap

zswap 有下面几个配置参数:

grep -R . /sys/module/zswap/parameters/
/sys/module/zswap/parameters/enabled:Y
/sys/module/zswap/parameters/max_pool_percent:25
/sys/module/zswap/parameters/compressor:lz4
/sys/module/zswap/parameters/zpool:zbud

其中:

  • zwap.enabled:表示是否启用 zswap 功能
  • zswap.compressor:表示用来压缩内存的算法,可以是 lzo、lz4、lz4hc、deflate
  • zswap.max_pool_percent:用来表示存放压缩内存的内存池的最大值,内存池本身并不是预先分配好的,而是根据需要慢慢增加,但最大不超过这个限定值
  • zswap.zpool:内存池的管理算法,可以是 zbud 或 z3fold,其中 z3fold 要比 zbud 有更好的压缩率

你可以手工将上面这些参数加入到启动的内核参数中,比如 zswap.enabled=1 zswap.compressor=lz4 zswap.max_pool_percent=20 zswap.zpool=z3fold,若是通过 systemd.swap 来管理交换区的,则可以通过修改 /etc/systemd/swap.conf 来进行配置

grep -i zswap /etc/systemd/swap.conf
# Zswap
# Zswap create compress cache between swap and memory for reduce IO
# https://www.kernel.org/doc/Documentation/vm/zswap.txt
zswap_enabled=1
zswap_compressor=lz4      # lzo lz4
zswap_max_pool_percent=25 # 1-99
zswap_zpool=zbud          # zbud z3fold

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

请止步禁区

暂无简介

文章
评论
26 人气
更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文