TL;DR
This paper introduces TZC, an efficient inter-process communication method for robotics middleware that reduces latency by using partial serialization and shared memory, significantly improving performance in ROS and ROS2 systems.
Contribution
The paper presents a novel partial serialization algorithm and integrates TZC with ROS and ROS2, achieving near-zero copy IPC and substantial latency reductions.
Findings
TZC reduces IPC overhead from tens of milliseconds to microseconds.
In 4MB messages, TZC cuts ROS IPC latency from tens of ms to hundreds of microseconds.
Using TZC in autonomous driving scenarios shortens braking distance by 16%.
Abstract
Inter-process communication (IPC) is one of the core functions of modern robotics middleware. We propose an efficient IPC technique called TZC (Towards Zero-Copy). As a core component of TZC, we design a novel algorithm called partial serialization. Our formulation can generate messages that can be divided into two parts. During message transmission, one part is transmitted through a socket and the other part uses shared memory. The part within shared memory is never copied or serialized during its lifetime. We have integrated TZC with ROS and ROS2 and find that TZC can be easily combined with current open-source platforms. By using TZC, the overhead of IPC remains constant when the message size grows. In particular, when the message size is 4MB (less than the size of a full HD image), TZC can reduce the overhead of ROS IPC from tens of milliseconds to hundreds of microseconds and can…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
