CARET (Chain-Aware ROS Evaluation Tool) is one of performance analysis tool dedicated with ROS 2 applications. It is able to measure not only callback latency and communication latency, but also path latency, in other words, chain of node or callback. As additional tracepoints are introduced by function hook, tracing resolution is improved.
If you find CARET is useful in your research, please consider citing:
T. Kuboichi, A. Hasegawa, B. Peng, K. Miura, K. Funaoka, S. Kato, and T. Azumi, "CARET: Chain-Aware ROS 2 Evaluation Tool," IEEE international conference on Embedded and Ubiquitous Computing (EUC), 2022.
B. Peng, A. Hasegawa, and T. Azumi, "Scheduling Performance Evaluation Framework for ROS 2 Applications," IEEE International Conference on Embedded Software and Systems (ICESS), 2022.
Also, check out ROSCON 2022 presentation titled "Chain-Aware ROS Evaluation Tool (CARET)" (video, slide).
.repos
files to construct a CARET workspaceros2 caret
rclcpp
including CARET-dedicated tracepointsros2_tracing
including definition of CARET-dedicated tracepoints