ZFS ARC大小与目标大小

我想了解ZFS ARC的内部工作原理。 不过,我对以下几件事情感到困惑:

  1. 实际( zfs:0:arcstats:size )与目标大小( zfs:0:arcstats:c )。 我明白,实际大小分配和存储caching的内容。 但是,目标尺寸是多less呢? 这两者有什么区别?

  2. mru_size( zfs:0:arcstats:p )+ mfu_size( zfs:0:arcstats:czfs:0:arcstats:p )vs data_size( zfs:0:arcstats:data_size )。 data_size不应该是mru_size和mfu_size的总和吗? 什么是正确的ARC大小分解? 根据http://lists.freebsd.org/pipermail/freebsd-fs/2012-June/014643.html ,它应该是hdr_size + data_size (mru_size + mfu_size + anon_size) + other_size + l2_hdr_size ,但它不会使任何感觉作为mru_size通常比data_size更大。

  3. 什么是弧形记忆油门用于?

感谢任何答案/指针。

我相信ARC的目标规模可以增长到多大,实际上目前使用的是多less。 我在我的服务器上看到了这个,我给了它12个演出,但除非碰到它,否则它不会真的坐在12个演出中。 它通常喜欢坐在10-11演出。

这里有一个链接来解释内存节stream。 看起来ZFS最初不是为了记忆而编程的,这很可能就是为什么它在那里。 ( http://www.zfsbuild.com/2012/04/18/let-zfs-use-all-of-your-ram/

关于#2,我不确定。 抱歉。

希望这有助于!