メモリに問題があります。常駐メモリを増やしすぎるプロセスがあります。メモリ リークがあるかどうかを判断しようとしています。
プロセスを開くだけで、メモリは151Mbを占有します
VIRT RES SHR 792m 151m 14m
数日後、プロセスは常駐メモリを増やしすぎます。
VIRT RES SHR 784m 480m 9204
2 つのダンプを生成しました。1 つはプロセスを開き、もう 1 つは数日後に、次のようなダンプを生成しました。
jmap -dump:file=file.bin PID
最初のダンプは 23 Mb を占有し、2 番目のダンプは 244 Mb を占有します。
メモリ アナライザー ツールで両方のダンプを開くと、両方のダンプがほぼ同じ ~7Mb を占めていることがわかりました。最初のダンプは 6.6Mb、2 番目のダンプは 7.4Mb です。
これがどのように可能であり、メモリリークが存在するかどうかをどのように判断できますか? このメモリの増分を正当化するにはどうすればよいですか?
どうもありがとうございました!!
追加情報として、smaps は有罪と思われる奇妙なエントリを示しています。
追加情報として: smaps は 487a0000-5fbcd000 rwxp 00000000 00:00 0 を示しています
サイズ: 381108キロバイト
RSS: 381108kB
Pss: 10420kB
Shared_Clean: 0 kB
Shared_Dirty: 0 kB
Private_Clean: 0 kB
Private_Dirty: 381108 kB
参照: 374832 kB
匿名: 381108 kB
AnonHugePages: 370688 kB
スワップ: 0kB
KernelPageSize: 4 kB
MMUPageSize: 4 kB
ロック: 0kB
しかし、私はそれが何を意味するのか理解できません。