micro-ROS / micro-ROS/micro-ROS-Agent
Insanly huge agent cpu spike
まだ誰も着手していません。
- 主要言語
- C++
- スター
- 201
- フォーク
- 111
- 平均マージ
- 1日 6時間
- マージ済み PR(30日)
- 10
説明
**Describe the bug**
Hi,
I am encountering huge CPU usage of the Micro ros agent running from docker as follows:
`docker run -it --rm -v /dev:/dev --privileged --net=host microros/micro-ros-agent:foxy udp4 -p 8888`

**To Reproduce**
Steps to reproduce the behaviour:
1. Clone repo 'micro_ros_arduino' Foxy Branch
2. Flash 8 ESPs with it (Client Key unique for each Esp)
3. Run Publisher example for 3 hours
4. CPU spike happens after around 3h
5. See CPU spike on htop
**Expected behaviour**
A normal usage of ~100% CPU usage max at all times.
**System information (please complete the following information):**
- OS: Ubuntu 20.04
- ROS 2 Foxy
- Hardware: 8x ESP32 micro-controllers running agent and client version 2.3.0
what can be the possible reason behind such a huge CPU usage?
Observation from my tests: it happens exponentially were it starts to increase to 200 then 500 then 1000%
And after the agent reaches past 200%, the Esp32 loses connection with the agent and fails to publish any messages.
Any help is much appreciated!
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
まず、ESP32クライアント8台を使用した、報告された Ubuntu 20.04 および ROS 2 Foxy のセットアップで、提供されている Docker コマンドを実行し、その後 Publisher の例の実行中に htop を監視します。CPU使用率の遅延した増加と接続の喪失を再現し、その原因となる agent の動作を特定して、すべてのクライアントがパブリッシュを続けている間もCPU使用率が安定していることを確認します。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- cpp, docker
- 領域
- distributed-systems, embedded-iot, networking, performance
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100