finds.dev← search

// the find

eclipse-iceoryx/iceoryx

★ 2,114 · C++ · Apache-2.0 · updated Jun 2026

Eclipse iceoryx™ - true zero-copy inter-process-communication

iceoryx is a shared-memory IPC middleware that achieves true zero-copy by having publishers write directly into a pre-allocated shared segment that subscribers read without any copying. It originated in automotive (AUTOSAR Adaptive) and is the transport layer behind ROS 2's rmw_iceoryx and Cyclone DDS. Worth noting up front: this C++ version is in maintenance mode — iceoryx2 (Rust) is where active development is happening.

The zero-copy claim is real, not marketing: payload size has no effect on transfer latency because data never moves, only a pointer does. Real production adoption in ROS 2, Cyclone DDS, and Apex.AI means the API surface has been stress-tested at scale, not just in examples. The design documentation is unusually thorough — lock-free queue design, relocatable pointer internals, error-handling philosophy — you can actually understand why decisions were made. The C binding (iceoryx_binding_c) is a proper first-class citizen, not an afterthought, which makes FFI from Rust or Python via ctypes workable.

RouDi, the central daemon that manages shared memory segments, is a single point of failure: if it crashes, all IPC in the system stops cold. The memory pool is pre-allocated at startup with fixed sizes you configure upfront; get those wrong and you get runtime allocation failures, not a graceful backpressure signal. Payload types must be relocatable — no raw pointers, no virtual dispatch, no std::string — which is a real constraint that will hit you when you try to send anything non-trivial and forces you into iceoryx's fixed-size vector/string types. And if you're starting a new project today, adopting the C++ version means inheriting a codebase the maintainers have explicitly deprioritized in favor of the Rust rewrite.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →