hardware for home use large storage

Artem Belevich fbsdlist at src.cx
Mon Feb 15 16:54:49 UTC 2010


>> * vm.kmem_size
>> * vm.kmem_size_max
>
> I tried kmem_size_max on -current (this year), and I got a panic during use,
> I changed kmem_size to the same value I have for _max and it didn't panic
> anymore. It looks (from mails on the lists) that _max is supposed to give a
> max value for auto-enhancement, but at least it was not working with ZFS
> last month (and I doubt it works now).

It used to be that vm.kmem_size_max needed to be bumped to allow for
larger vm.kmem_size. It's no longer needed on amd64. Not sure about
i386.

vm.kmem_size still needs tuning, though. While vm.kmem_size_max is no
longer a limit, there are other checks in place that result in default
vm.kmem_size being a bit on the conservative side for ZFS.

>> Then, when it comes to debugging problems as a result of tuning
>> improperly (or entire lack of), the following counters (not tunables)
>> are thrown into the mix as "things people should look at":
>>
>>  kstat.zfs.misc.arcstats.c
>>  kstat.zfs.misc.arcstats.c_min
>>  kstat.zfs.misc.arcstats.c_max
>
> c_max is vfs.zfs.arc_max, c_min is vfs.zfs.arc_min.
>
>>  kstat.zfs.misc.arcstats.evict_skip
>>  kstat.zfs.misc.arcstats.memory_throttle_count
>>  kstat.zfs.misc.arcstats.size
>
> I'm not very sure about size and c... both represent some kind of current
> size, but they are not the same.

arcstats.c -- adaptive ARC target size. I.e. that's what ZFS thinks it
can grow ARC to. It's dynamically adjusted based on when/how ZFS is
back-pressured for memory.
arcstats.size -- current ARC size
arcstats.p -- portion of arcstats.c that's used by "Most Recently
Used" items. What's left of arcstats.c is used by "Most Frequently
Used" items.

--Artem


More information about the freebsd-stable mailing list