zcache 的替代方案是什么?

ill*_*ate 10 cache swap zram linux-kernel

我想使用高速交换设备或zram作为“页面缓存”,以便在系统内存不足时自动删除页面数据。

显然,zcache已经停产了。有没有可用的替代方案?如果是,是哪一个?

bcache 当没有可用内存时,似乎不会丢弃数据。

Mar*_*377 9

Indeedzcache似乎已停止使用,因为它已从内核 3.11删除,因为它实际上已经过时了。zcache 移除的提交消息读取

暂存:zcache:删除它

zcache 已经过时,不再使用,Bob Liu 重写了它,并通过主 -mm 树提交它以包含在内,因为它应该首先完成......

看起来Bob Liu 的提交从未进入主线。

现在,按照我的理解,页面缓存在内存不足的情况下自动“删除”(清除)。zcache实际上实现了压缩,因此它可以在被删除之前维护更多的文件系统页面(也称为“vfs 缓存”或“inode/dentry 缓存”)。

今天的 Linux 内核有zswap,它实现了基于磁盘的压缩交换,但不压缩文件系统页面。

我不知道 zcache 的当前替代方案。

也许作为一种解决方法,如果您担心由于文件系统页面被释放而导致性能下降,请考虑按照此处的说明进行调整。vm.vfs_cache_pressure

对于正常的工作负载,使用zswap.

补充阅读:

  1. zram vs zswap vs zcache 终极指南:何时使用哪一个
  2. Zswap、Zram、Zcache 桌面使用场景
  3. zswap(Arch Linux 维基)
  4. Cleancache 和 Frontswap (LWN)
  5. 虚拟内存系统中的压缩缓存案例