我可以同时使用 zRAM 和磁盘交换文件吗?

Tho*_*wne 3 swap zram

我的机器有 24GB 可用 RAM,但我通常使用的远远少于 8GB。然而,有时我会处理大型数据文件,突然需要 40GB,并且在极少数情况下,我希望能够访问更多(最多 60GB)。这主要是使用numpy和Apache Arrow。

现在我有一个 20GB 的 SSD 交换文件,工作正常,但速度明显很慢。我想用 zRAM 替换它,假设我在 16GB 上进行双重压缩,即 32GB,加上“ram”中剩余的 8GB = 40GB。不过,理想情况下,有时我希望使用大于 40GB 的内存,并想知道不适合 zRAM 的内容是否有可能进一步溢出到“传统”SSD 交换文件或分区中。

这可行吗?显然我希望 zRAM 的优先级高于磁盘交换文件。

van*_*ium 7

兹拉姆

zram本质上是将压缩交换数据存储在内存中而不是磁盘上。它充当常规且独立的交换设备。因此,除了交换分区或交换文件之外,它还可以用作附加交换空间,并被赋予一定的优先级。

交换的优先级可以使用该工具设置,也可以使用swapon选项定义。看。/etc/fstabpri=man swapon

还可以考虑 zswap

您可以考虑另一种技术,而不是使用 zram zswap。这里,内存也用于存储交换的数据。但是,通过这种机制,您的内存将充当交换的压缩内存缓存。需要缓存的数据首先存储在 中zswap,只有需要时才提交到磁盘,从而加快交换速度并减少磁盘 I/O。

  • 不确定您参考的是哪些步骤。zswap 有所不同:它是用于定期交换的内存缓存,因此在交换需求有限的情况下,交换的数据永远不会写入磁盘,如果需要更高的需求,最旧的数据会将其写入磁盘。所以是的,如果这就是您第二步的意思,它会首先自动使用。 (2认同)