micro-ROS / micro-ROS/micro_ros_setup
When ros2 creates a new topic, the CPU usage is high
オープン
まだ誰も着手していません。
- 主要言語
- Shell
- スター
- 509
- フォーク
- 183
- 平均マージ
- 22時間 26分
- マージ済み PR(30日)
- 7
説明
- Hardware description: N/A
- RTOS: Freertos
- Installation type: micro_ros_setup
- Version or commit hash: humble
Steps to reproduce the issue
- Start micro_ros_agent through ros2 launch;
- htop -p
pidof micro_ros_agentto check the change of CPU usage - Publish a message through ros2 topic pub /avoidance_status std_msgs/msg/UInt8 "{data: 0}", and you will find that the CPU usage soars from 7% to 30%, and then falls back to a stable state of 7%;
- Create a publishing topic through rclcpp, only create it once, send at 20hz frequency for 30s, stop for 3min, and then send again..., the CPU usage only changes when starting the node, and there is no fluctuation during the middle operation.
Is there any way to solve this problem? If the CPU is insufficient, the main controller will not be able to run.
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
ros2 launch を介して micro_ros_agent を起動し、htop でそのプロセスを監視し、示されている ros2 topic pub コマンドでトピックを作成して、報告を再現します。CPU スパイクを rclcpp のパブリケーションの場合と比較し、micro_ros_agent におけるトピック作成の経路を追跡します。原因が特定され、トピックの作成によって報告されている過剰な CPU 使用率が発生しなくなれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 領域
- embedded-iot, performance, robotics
- issue の種類
- バグ
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 活発さ
- 停滞
- 明瞭さ
- 説明が足りない
- 初心者へのやさしさ
- 25/100