r_kawai
2022年7月8日 17時05分
お世話になっております。
topコマンドでCPU負荷を確認したところ、以下のようにaiot-modem-controldのCPU負荷が高い状態となっておりました。
top - 16:44:46 up 5 min, 2 users, load average: 1.18, 0.80, 0.37 Tasks: 69 total, 1 running, 68 sleeping, 0 stopped, 0 zombie %Cpu(s): 89.2 us, 6.2 sy, 0.0 ni, 4.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st MiB Mem : 498.4 total, 423.5 free, 29.5 used, 45.4 buff/cache MiB Swap: 0.0 total, 0.0 free, 0.0 used. 456.6 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 260 root 20 0 10820 1144 1032 S 86.9 0.2 4:51.42 aiot-modem-cont 159 root 20 0 21420 5940 5132 S 1.3 1.2 0:01.68 systemd-journal 253 root 20 0 23700 2944 2184 S 0.7 0.6 0:00.46 rsyslogd 46 root 20 0 0 0 0 S 0.3 0.0 0:00.78 mmcqd/0 100 root 20 0 0 0 0 I 0.3 0.0 0:00.08 kworker/u2:2
しばらく様子を見ておりましたが、システム起動後1時間程度経過しても90%程度のCPU負荷となっており、常時高負荷になっているように見えています。
また、/etc/aiot-modem-control/startup.confはデフォルトの状態(LTE接続していない状態)、
LTE接続するように設定した状態の2パターンで確認しましたが、いずれもaiot-modem-controldが高負荷になる現象は発生しました。
aiot-modem-controldが高負荷になるのは意図した動作となりますでしょうか。
負荷を抑える方法があればご教示頂けませんでしょうか。
コメント
at_syunya.ohshio
大塩です。
> 追加の情報となります。
> 弊社では現在2台armadillo IoT A6を所持しており、1台では今回質問させて頂いているaiot-modem-controldの高負荷が発生し、もう1台では発生しておりません。
>
> 2台の差分はems31-utilsのバージョンのみとなります。
> ems31-utilsのバージョンはそれぞれ以下となります。
>
> (1)aiot-modem-controldの高負荷が発生する端末
>
> root@armadillo:/home/atmark# dpkg -l |grep ems31-utils > ii ems31-utils 1.2.2 armhf Utilities for Thales EMS31 on Armadillo board > > #top結果 > top - 10:47:52 up 3 min, 2 users, load average: 2.79, 1.75, 0.74 > Tasks: 84 total, 2 running, 82 sleeping, 0 stopped, 0 zombie > %Cpu(s): 97.4 us, 1.6 sy, 1.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st > MiB Mem : 496.3 total, 362.6 free, 34.8 used, 98.9 buff/cache > MiB Swap: 0.0 total, 0.0 free, 0.0 used. 447.7 avail Mem > > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND > 259 root 20 0 10820 1104 992 S 95.4 0.2 2:34.34 aiot-modem-cont > 901 root 39 19 1632 1020 676 R 1.3 0.2 0:00.39 gzip > 919 root 20 0 5812 2620 2128 R 1.0 0.5 0:00.12 top > 46 root 20 0 0 0 0 I 0.3 0.0 0:00.11 kworker/u2:1 > 51 root 20 0 0 0 0 S 0.3 0.0 0:02.19 mmcqd/0 > 297 mosquit+ 20 0 7616 4660 4020 S 0.3 0.9 0:00.28 mosquitto >
>
> (2)aiot-modem-controldの高負荷が発生しない端末
>
> root@armadillo:~/armadillo_iot_a6_env# dpkg -l |grep ems31-utils > ii ems31-utils 1.2.0 armhf Utilities for Thales EMS31 on Armadillo board > > #top結果 > top - 10:40:34 up 23 min, 2 users, load average: 1.16, 1.13, 0.98 > Tasks: 83 total, 1 running, 82 sleeping, 0 stopped, 0 zombie > %Cpu(s): 33.3 us, 14.3 sy, 0.0 ni, 47.6 id, 0.0 wa, 0.0 hi, 4.8 si, 0.0 st > MiB Mem : 496.3 total, 385.6 free, 45.7 used, 65.0 buff/cache > MiB Swap: 0.0 total, 0.0 free, 0.0 used. 437.4 avail Mem > > PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND > 591 root 20 0 39772 15260 6136 S 16.7 3.0 4:34.40 python3 > 1994 root 20 0 7540 2512 2096 R 16.7 0.5 0:00.07 top > 7 root 20 0 0 0 0 S 5.6 0.0 0:08.38 ksoftirqd+ > 1 root 20 0 12460 6540 5108 S 0.0 1.3 0:06.01 systemd > 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd > 4 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/0+ >
>
>
> (1)、(2)のそれぞれについてLTE接続はできております。
>
> (1)では
> https://armadillo.atmark-techno.com/forum/armadillo/11990
> を参考に、ems31-utilsをアップデートしています。
> アップデートする前のaiot-modem-controldの負荷については確認しておりません。
> (1)のems31-utilsを1.2.0に戻して確認を試みましたが、インストール時に以下エラーが発生したため、(1)についてはems31-utils=1.2.0での確認はできておりません。
>
> root@armadillo:/home/atmark# apt install ems31-utils=1.2.0 > パッケージリストを読み込んでいます... 完了 > 依存関係ツリーを作成しています > 状態情報を読み取っています... 完了 > E: 'ems31-utils' のバージョン '1.2.0' が見つかりませんでした >
>
>
> (1)、(2)それぞれについて
> journalctl -u aiot-modem-controld
> で取得したログを添付いたします。
>
>
>
>
> ems31-utilsのバージョンによってaiot-modem-controldのCPU負荷が高くなる現象は発生し得るでしょうか。
> また、ems31-utilsの1.2.2を使用せず、1.2.0を使用した場合、何か問題はありますでしょうか。
> お手数をおかけしますが、ご確認をお願いいたします。
ご報告とそれぞれの情報ありがとうございます。
こちらでも確認し、CPU使用率が高いことを確認しました。
この問題について修正致します。
ご迷惑をおかけして申し訳ありません。
r_kawai
at_syunya.ohshio
大塩です。
2022年7月 製品アップデートにて、この現象についての修正を行いました。
apt install コマンドにて ems31-utils の最新バージョンをインストールし、動作確認をしてみてください。
詳細は以下製品アップデートニュースをご確認ください。
https://armadillo.atmark-techno.com/news/20220727/software-update-aiota6
以上です。
r_kawai
> 大塩です。
>
> 2022年7月 製品アップデートにて、この現象についての修正を行いました。
> apt install コマンドにて ems31-utils の最新バージョンをインストールし、動作確認をしてみてください。
>
> 詳細は以下製品アップデートニュースをご確認ください。
> https://armadillo.atmark-techno.com/news/20220727/software-update-aiota6
>
> 以上です。
ご対応いただきありがとうございます。
ems31-utilsをバージョン1.2.3にアップデートすることで現象が改善することを確認いたしました。
r_kawai
2022年7月11日 11時12分
追加の情報となります。
弊社では現在2台armadillo IoT A6を所持しており、1台では今回質問させて頂いているaiot-modem-controldの高負荷が発生し、もう1台では発生しておりません。
2台の差分はems31-utilsのバージョンのみとなります。
ems31-utilsのバージョンはそれぞれ以下となります。
(1)aiot-modem-controldの高負荷が発生する端末
(2)aiot-modem-controldの高負荷が発生しない端末
(1)、(2)のそれぞれについてLTE接続はできております。
(1)では
https://armadillo.atmark-techno.com/forum/armadillo/11990
を参考に、ems31-utilsをアップデートしています。
アップデートする前のaiot-modem-controldの負荷については確認しておりません。
(1)のems31-utilsを1.2.0に戻して確認を試みましたが、インストール時に以下エラーが発生したため、(1)についてはems31-utils=1.2.0での確認はできておりません。
(1)、(2)それぞれについて
journalctl -u aiot-modem-controld
で取得したログを添付いたします。
ems31-utilsのバージョンによってaiot-modem-controldのCPU負荷が高くなる現象は発生し得るでしょうか。
また、ems31-utilsの1.2.2を使用せず、1.2.0を使用した場合、何か問題はありますでしょうか。
お手数をおかけしますが、ご確認をお願いいたします。