Armadilloフォーラム

メモリリークの確認方法について

s.nagata

2024年12月18日 17時21分

==========
製品型番:AGX3140-D00Z
カーネルバージョン:4.9.133-at28
==========

Armadillo-IoT G3でメモリリークの調査をしています。
確認方法は、topコマンドです。
確認結果は、添付ファイルを参照ください。

確認結果を踏まえた上で3点質問です。
①メモリ使用量(used)が徐々に増え続けていますが、問題ありませんでしょうか。
②自身で作成したプロセスは、メモリ使用量が一定であることを確認済みです。
 よって、メモリ使用量増加はOS関連のプロセスだと考えていますが、どのプロセスが原因なのか見当つきましたら教えていただけないでしょうか。
③②でどのプロセスが原因か判明した場合、メモリ使用量は今後も増え続けていくのか、一定の値で頭打ちになるのかどちらでしょうか。

以上、よろしくお願いいたします。

ファイル ファイルの説明
memoryleak_20241218.zip
コメント

溝渕です。

> ①メモリ使用量(used)が徐々に増え続けていますが、問題ありませんでしょうか。

約69→70の増加についてでしょうか?

時間の間隔が不明ですが、誤差と認識できなくもないです。

> ②自身で作成したプロセスは、メモリ使用量が一定であることを確認済みです。
>  よって、メモリ使用量増加はOS関連のプロセスだと考えていますが、どのプロセスが原因なのか見当つきましたら教えていただけないでしょうか。

TOPコマンドで、各プロセスごとのメモリ使用率が確認できると思います。どのプロセスのメモリ使用率が増加しているか確認していただけますか?

> ③②でどのプロセスが原因か判明した場合、メモリ使用量は今後も増え続けていくのか、一定の値で頭打ちになるのかどちらでしょうか。

メモリリークをしている場合は増え続けていく可能性があります。そうでなく、daemon等が起動した事によりメモリ使用量が増えていた場合は頭打ちになる事が多いかと思います。

溝渕さま

ご回答ありがとうございます。
お礼が遅くなり、大変申し訳ございません。

以下、追加でコメントさせていただきます。
>時間の間隔が不明ですが、誤差と認識できなくもないです。
時間の間隔は、1時間になります。
300時間程度で約2MBとMB単位で増えているため、誤差と認識して良いのか?と思った次第です。

>TOPコマンドで、各プロセス毎のメモリ使用率が確認できると思います。どのプロセスのメモリ使用率が増加しているか確認していただけますか?
まだ全プロセスは確認できておりませんが、NetWorkManagerのメモリ使用率がは徐々に増加しているようです。

溝渕です。

何の解決にもなりませんが、調べた内容を展開します。

NetworkManagerのメモリリークとしては以下を見付けましたが、
https://github.com/NetworkManager/NetworkManager/commit/44cbd3b036411c8…

Debian GNU/Linux 10(buster)のnetwork-manager(1.14.6-2+deb10u1)は該当しなさそうです。

もし、NetworkManagerが原因である事がわかりましたら、その旨ご連絡ください。