micro-ROS / micro-ROS/micro-ROS-Agent

Insanly huge agent cpu spike

Offen
#190 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
C++
Sterne
201
Forks
111
Ø Merge
1 T. 6 Std.
Gemergte PRs (30 T.)
10

Beschreibung

**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`
![MicrosoftTeams-image (23)](https://user-images.githubusercontent.com/54395427/234046041-e96a0c4a-b77d-44cd-b1b8-bd807258a5b4.png)

**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!

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginnen Sie damit, den bereitgestellten Docker-Befehl auf dem gemeldeten Ubuntu-20.04- und ROS-2-Foxy-Setup mit acht ESP32-Clients auszuführen, und überwachen Sie dann htop während des Publisher-Beispiels. Reproduzieren Sie den verzögerten CPU-Anstieg und den Verbindungsverlust, identifizieren Sie das dafür verantwortliche Agent-Verhalten und verifizieren Sie, dass die CPU-Auslastung stabil bleibt, während weiterhin alle Clients publizieren.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
cpp, docker
Bereich
distributed-systems, embedded-iot, networking, performance
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.