起因一半是因为公司配的电脑太菜(暴言
最近编译操作系统时进行了个智熄操作(make -j
)导致build server的物理内存被光速塞爆,于是翻出闲置许久的M.2 SATA SSD当作swap。但不知是硬盘盒故障还是SSD故障,写入速度只有可怜的60MB/s(甚至用久了还能更慢),当作swap并不能提速,顶多免死。
与此同时,折腾NEC洋垃圾轻薄本(Fedora 36)的时候偶然发现lsblk
命令汇报了一个zram0 252:0 0 3.7G disk [SWAP]
,遂Google了一下,好家伙,突然领悟了低内存+强劲CPU的正确使用方法。
低内存: anything below 6 gigs of RAM
强劲CPU:anything after Hotwell(amd64)
1 |
|
可以酌情写入modprobe
及systemd
配置文件启动自动配置。
可以使用cat /sys/block/zram0/mm_stat
或更加人性化的zramctl [--output-all]
来检查zram
设备使用状况。
ZRAM设备本质上还是一种用时间换取空间的做法。关于ZRAM应用和调优甚至还有深入讲解的博客文章。文中也提到,应当根据实际应用情况来选择压缩算法和vm.swappiness
参数配置。
但最开始提到的问题其实只要别偷懒,make -j14
就好了
20221122更新 压缩算法设置位于/sys/block/zramn/disksize
,或者其实不如直接
1 |
|
Works on my machine™