On 2022-10-07 9:34 AM, Dominique Bejean wrote:
Hi Dima,
About ZFS, I read this *"In an effort to maximize read/write performance,
ZFS uses all available space in RAM to create a huge cache"*. How does it
work with MMapDirectory ? No conflict ?
ZFS uses half of the available RAM for L1 cache (configurable via kernel
module parameter). I don't know how it works with mmap() because its
caching module was originally ported from Solaris and was separate from
linux's normal filesystem caching code. I haven't kept up with it for a
couple of years now and don't know what state it's in now.
Normally linux kernel is supposed to be smart enough to recognize when
the data is in RAM already, e.g. on RAM disk, and then mmap() just sets
a pointer, but I don't know if that works with ZFS cache. (And that's
assuming the data is in the cache already.)
I think it's a moot point with 2.5" disk slots -- I assume that's what
they have? If you need more than 2TB/slot, you have to use SSDs anyway,
and on SSDs the clever multi-level caching schemes aren't that
beneficial anyway as SSDs are fast enough already.
Dima