ボックスには96GBのRAMがあり、スワップはありません。
# free -m
total used free shared buffers cached
Mem: 96714 85762 10952 0 94 2185
-/+ buffers/cache: 83482 13232
Swap: 0 0 0
85GBメモリを使っているようですが、最上位命令でsort byをすると%MEM
メモリは32GBのみを使用し、残りはどこに行きますか?
どんなアイデアがありますか?
編集する
# cat /proc/meminfo
MemTotal: 99036140 kB
MemFree: 10901516 kB
Buffers: 126816 kB
Cached: 2355968 kB
SwapCached: 0 kB
Active: 35103352 kB
Inactive: 2973732 kB
Active(anon): 34352040 kB
Inactive(anon): 1793248 kB
Active(file): 751312 kB
Inactive(file): 1180484 kB
Unevictable: 1892 kB
Mlocked: 0 kB
SwapTotal: 0 kB
SwapFree: 0 kB
Dirty: 8864 kB
Readahead: 0 kB
Writeback: 0 kB
AnonPages: 35596308 kB
Mapped: 693268 kB
Shmem: 549000 kB
Slab: 48846688 kB
SReclaimable: 48771520 kB
SUnreclaim: 75168 kB
KernelStack: 9864 kB
PageTables: 108668 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 49518068 kB
Committed_AS: 41937368 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 500436 kB
VmallocChunk: 34290219936 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 7252 kB
DirectMap2M: 100620288 kB
ベストアンサー1
合計メモリ=使用可能メモリ+キャッシュ/バッファ+アクティビティ+非アクティブ
= 10901516 + 126816 + 2355968 + 35103352 + 2973732
= 51461384 KB
= 49 GB
不足しているメモリ = 96GB - 49GB = 47GB 不足しているメモリは、タブレットメモリ(48846688kB)とほぼ同じです。いくつかのカーネルモジュールからメモリが漏れていると推測されます。
さらに調査するには、/proc/slabinfo および labtop コマンドの出力を印刷し、vmware で実行している場合は vmware-toolbox-cmd stat bubble および vmware-toolbox-cmd stat memlimit の出力も印刷します。
編集する
インターネットで検索してみると、48646536kBを消費するdentryカーネルモジュールがあるようです。https://serverfault.com/questions/561350/unusually-high-dentry-cache-usageこれは、LibcurlにバンドルされているNSS(Network Security Services)ライブラリで問題が発生することを示しています。
少なくともnss-softokn(nss-utilsに必須の依存関係がある)をアップグレードするだけです。利点を得るには、libcurlを使用するプロセスに環境変数NSS_SDB_USE_CACHEを設定する必要があります。この環境変数が存在する場合、存在しないファイルの高価なスキャンをスキップできます。 」
試してみて教えてください。