As shown below, the memory usage is shown as only 71.5% in Resource Monitor, while swap is used heavily and the cache is really low. This looked weird as I believe in a general Linux system, after running steadily for long enough time and doing enough I/O, ARC and cache usage should go high and take almost all available RAM, but the Resource Manager showed a lot of “Free” memory not being utilized by anything.
I SSHed to the machine and used free and cat /proc/lpl/kstat/zfs/arcstats to get some numbers. It turns out that the actual used memory from free is much higher than shown in Resource Manager, and the ZFS ARC size shown is also different from two sources.
And I found 2 coincidences:
- The utilization in Resource Manager (11.03GB) is very close to
used - buffers/cache - arc evictablefrom SSHed values: (13758 - 2590921728 / 1024 / 1024) / 1024 ~= 11.02 - The ZFS ARC shown in Resource Manager (3.63GB) is very close to
size - evictablefrom SSH: (6492646377 - 2590921728) / 1024 / 1024 / 1024 = 3.63
So, is QNAP deliberately hiding the “evictable” part of ARC usage in the Resource Manager? This is quite misleading. Even it’s evictable it isn’t as available as the “Free” memory: the system does not reclaim it very actively for apps or anything. And we also can’t see the real ARC usage from Resource Manager.
I hope QNAP could show the “evictable” part of ARC in Resource Manager.
QuTS Hero version: h5.2.8.3350
$ free -m
total used free shared buffers cached
Mem: 15787 14212 1575 114 3 423
-/+ buffers/cache: 13785 2002
Swap: 62242 4901 57341
$ cat /proc/lpl/kstat/zfs/arcstats
...
evictable 4 2590921728
...
c_max 4 9270338840
size 4 6492646377
