Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request introduces a C++ version of
cookbag.py
that can be run withIt is more limited than the Python version as it only re-orders messages of the type
sensor_msgs/Imu
but it is around 70x faster than the corresponding Python implementation.I just tested it with a 40GB bag just containing a single
sensor_msgs/Imu
topic and the Python version took 5 minutes loading the entire bag into memory and then processed the data at less than 100MB/s. The C++ version on the other hand processed the 40GB of data in under 10 minutes never taking up more than 20GB of memory.