![如何强制内核始终维护至少一些页面缓存?](https://linux22.com/image/142091/%E5%A6%82%E4%BD%95%E5%BC%BA%E5%88%B6%E5%86%85%E6%A0%B8%E5%A7%8B%E7%BB%88%E7%BB%B4%E6%8A%A4%E8%87%B3%E5%B0%91%E4%B8%80%E4%BA%9B%E9%A1%B5%E9%9D%A2%E7%BC%93%E5%AD%98%EF%BC%9F.png)
有没有办法强制内核始终维护至少一些页面缓存以用于写回缓存,即使面临内存压力?
我有一个相当特殊的用例,其中交换到 zswap 比没有大页面缓存更可取。 (我已经设置了相关的 vm.dirty 值以允许很多写缓存)
所以我想要的是设置一个最小页面缓存大小(比如总 RAM 的 10-30%),如果内存使用量上升,内核应该开始交换,而不是刷新脏页(我正在使用 zswap,这样就可以了)只是意味着压缩页面,但仍将大部分保留在 RAM 中)
我尝试将 vm.swappiness 提高到 100,并将 vm.vfs_cache_Pressure 降低到 10,但这似乎并没有减少它。