ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Starting from eloquent, we have support for zero-copy IPC. Details can be found in the link mentioned above: https://github.com/ros2/ros2/issues/785. Also there is a design document drafted which hopefully gets merged anytime soon.

In a nutshell, eloquent has support for loaned messages which are allocated/deallocated directly by the middleware and thus enables the middleware to have a zero-copy transport. To get started, you'd also need a middleware implementation which fully supports that zero-copy transport. There is https://github.com/eclipse/iceoryx which is such a middleware. There is also a suited RMW implementation for it so that you can use your regular ROS2 application with that middleware. You can find the implementation and more documentation on how to get started, here: https://github.com/ros2/rmw_iceoryx