ros2 / ros2_tracing

Tracing tools for ROS 2.
https://docs.ros.org/en/rolling/
Apache License 2.0
140 stars 42 forks source link

Upgrade to babeltrace 2.0 #22

Open christophebedard opened 1 year ago

christophebedard commented 1 year ago

Investigate using babeltrace2 for ingesting trace files from disk: https://github.com/efficios/babeltrace

(Issue moved from GitLab, see: https://gitlab.com/ros-tracing/ros2_tracing/-/issues/45)

mjcarroll commented 1 year ago

I made a baseline comparison for reading and converting all of the events in a trace file:

https://gist.github.com/mjcarroll/34e7f06d761c8c6ce2cce36027900b34

The main conclusion is that using babeltrace2 via their python API (https://babeltrace.org/docs/v2.0/python/bt2/) results in an ingestion that takes ~70s versus ~42s for the original babeltrace API. This was processing 865k events with kernel and user space events.