まず、私のカーネルがあまりにも多くのメモリを使用しているようです。
$ grep Slab /proc/meminfo
Slab: 21794184 kB
バラよりすべて/proc/meminfo そして/proc/slabinfo
$ free -h
total used free shared buff/cache available
Mem: 31Gi 22Gi 3.6Gi 3.0Mi 5.1Gi 8.2Gi
Swap: 8.0Gi 12Mi 8.0Gi
私は12GiBのメモリを使用するようにzfsを設定しましたが、それより少し使用しているようです。これにより arc_prune kthreads が発生します。すべてのコアを恒久的に最大化zfs_arc_max は起動以降変更されませんでした。関連している場合は、raidzに4x 8TBドライブがあります。からarc_summary.py
:
ARC Size: 103.98% 12.48 GiB
Target Size: (Adaptive) 100.00% 12.00 GiB
Min Size (Hard Limit): 8.14% 999.96 MiB
Max Size (High Water): 12:1 12.00 GiB
これにより、カーネルは説明できないほど約9GiBのメモリを失いました。私はこれらの問題(私のCPUとカーネルのメモリスペースを最大化するzfs)が関係していると確信しているので、これを質問として投稿しました。
私はUbuntu 20.04 LTS(Linux 5.4.0-65-generic、zfs-0.8.3-1ubuntu12.7)を使用しています。
問題は実行後しばらく消えますecho 3 > /proc/sys/vm/drop_caches
が、修正するのは難しいです。
どうなりますか?ヒントをどこで入手するのかわかりません。