Message Flow Analysis with Complex Causal Links for Distributed ROS 2 Systems

04/21/2022
by   Christophe Bédard, et al.
0

Distributed robotic systems rely heavily on publish-subscribe frameworks such as the Robot Operating System (ROS) to efficiently implement modular computation graphs. The ROS 2 executor, a high-level task scheduler which handles ROS 2 messages, is a performance bottleneck. We extend ros2_tracing, a framework with instrumentation and tools for real-time tracing of ROS 2, with the analysis and visualization of the flow of messages across distributed ROS 2 systems. Our method detects one-to-many and many-to-many causal links between input and output messages, including indirect causal links through simple user-level annotations. We validate our method on both synthetic and real robotic systems, and demonstrate its low runtime overhead. Moreover, the underlying intermediate execution representation database can be further leveraged to extract additional metrics and high-level results. This can provide valuable timing and scheduling information to further study and improve the ROS 2 executor as well as optimize any ROS 2 system. The source code is available at: https://github.com/christophebedard/ros2-message-flow-analysis.

READ FULL TEXT

page 1

page 8

page 9

research
01/02/2022

ros2_tracing: Multipurpose Low-Overhead Framework for Real-Time Tracing of ROS 2

Testing and debugging have become major obstacles for robot software dev...
research
05/26/2023

18 Million Links in Commit Messages: Purpose, Evolution, and Decay

Commit messages contain diverse and valuable types of knowledge in all a...
research
03/02/2015

Effective Techniques for Message Reduction and Load Balancing in Distributed Graph Computation

Massive graphs, such as online social networks and communication network...
research
02/02/2023

Empirical Analysis of the AdaBoost's Error Bound

Understanding the accuracy limits of machine learning algorithms is esse...
research
09/07/2019

OptSample: A Resilient Buffer Management Policy for Robotic Systems based on Optimal Message Sampling

Modern robotic systems have become an alternative to humans to perform r...
research
09/10/2023

Distributed Kafka Clusters: A Novel Approach to Global Message Ordering

In contemporary distributed systems, logs are produced at an astounding ...
research
01/25/2021

Data Flow Analysis of Asynchronous Systems using Infinite Abstract Domains

Asynchronous message-passing systems are employed frequently to implemen...

Please sign up or login with your details

Forgot password? Click here to reset