Sir*_*kin 4 swap compression zram
Ubuntu 18,尝试zram
使用lz4
压缩。
尝试修改/usr/bin/init-zram-swapping
文件
#!/bin/sh
...........
...........
for i in $(seq ${NRDEVICES}); do
DEVNUMBER=$((i - 1))
echo $mem > /sys/block/zram${DEVNUMBER}/disksize
echo lz4 > /sys/block/zram${DEVNUMBER}/comp_algorithm # <= added this line
mkswap /dev/zram${DEVNUMBER}
swapon -p 5 /dev/zram${DEVNUMBER}
done
Run Code Online (Sandbox Code Playgroud)
但是,重启后zramctl
仍然显示我正在使用lzo
算法
NAME ALGORITHM DISKSIZE DATA COMPR TOTAL STREAMS MOUNTPOINT
/dev/zram3 lzo 466M 2.9M 614.2K 1M 4 [SWAP]
/dev/zram2 lzo 466M 2.9M 631.2K 1M 4 [SWAP]
/dev/zram1 lzo 466M 2.9M 536.1K 1020K 4 [SWAP]
/dev/zram0 lzo 466M 3M 610K 1M 4 [SWAP]
Run Code Online (Sandbox Code Playgroud)
我也尝试添加在加入它rc.local
,但它抛出device already in use warning
,因为据我所知,之前要做的变化需求mkswap
和swapon
运行。
这有效:
# initialize the devices
for i in $(seq ${NRDEVICES}); do
DEVNUMBER=$((i - 1))
echo lz4 > /sys/block/zram${DEVNUMBER}/comp_algorithm
echo $mem > /sys/block/zram${DEVNUMBER}/disksize
mkswap /dev/zram${DEVNUMBER}
swapon -p 100 /dev/zram${DEVNUMBER}
done
Run Code Online (Sandbox Code Playgroud)
注意:您似乎需要在 zram 大小之前定义压缩算法。设置swapon -p
为优先级100
以积极使用 zram,因为它可以提高性能。