Linuxで説明されていない使用済みメモリ

Linuxで説明されていない使用済みメモリ

私のサーバーはカーネル4.18を実行しており、いくつかのメモリがすぐに欠落しているようです。一般的な原因(カーネルスラブメモリ、ページキャッシュ)は除外されました。

およそ 6GB 程度が使用されます (MemTotal - MemAvailable) プロセスとカーネルボー​​ド、shmem で使用するスペースをすべて合わせると、たったの 1GB に過ぎません。コールドスタート以降です。残りの5人はどこに行きましたか?

最も奇妙なことは、同じアプリケーションを実行している同じサーバーがあり、MemAvailableが実際にそこより5 GB高いことです。

# ps fauxw | sed 1d | awk '{ x += $6 } END { print x }'
757368

# cat /proc/meminfo 
MemTotal:       32826040 kB
MemFree:        26493788 kB
MemAvailable:   26322932 kB
Buffers:           11948 kB
Cached:            72584 kB
SwapCached:            0 kB
Active:           247756 kB
Inactive:          41348 kB
Active(anon):     204952 kB
Inactive(anon):     1012 kB
Active(file):      42804 kB
Inactive(file):    40336 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:             0 kB
SwapFree:              0 kB
Dirty:                 4 kB
Writeback:             0 kB
AnonPages:        204632 kB
Mapped:            33052 kB
Shmem:              1396 kB
Slab:             219376 kB
SReclaimable:      30744 kB
SUnreclaim:       188632 kB
KernelStack:       18960 kB
PageTables:        12548 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:    16413020 kB
Committed_AS:    4565744 kB
VmallocTotal:   34359738367 kB
VmallocUsed:           0 kB
VmallocChunk:          0 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:      186396 kB
DirectMap2M:     9152512 kB
DirectMap1G:    26214400 kB

答え1

私の質問に答えるには:

結局のところ、メモリ使用量はネットワークインターフェイスリングサイズ(ethtool -G)のさまざまな設定に関連していることがわかりました。このホストのRXとTXの数は4096に増え、それぞれ6つの10G NICと多くのキュー(56 vcore)を含むGBメモリを使用しました。

しかし、まだ奇妙なことは、メモリ使用量が/proc/情報のどこにも表示されないようです。

関連情報