Skip to main content

CI Codecov Examples FAQ Gitter Developer Meetup Roadmap

iceoryx2 - Zero-Copy Lock-Free IPC with a Rust Core

Introduction

Welcome to iceoryx2, the efficient, and ultra-low latency inter-process communication middleware. This library is designed to provide you with fast and reliable zero-copy and lock-free inter-process communication mechanisms.

So if you want to communicate efficiently between multiple processes or applications iceoryx2 is for you. With iceoryx2, you can:

  • Send huge amounts of data using a publish/subscribe, request/response, pipeline (planned) or blackboard pattern, making it ideal for scenarios where large datasets need to be shared.
  • Exchange signals through events, enabling quick and reliable signaling between processes.

iceoryx2 is based on a service-oriented architecture (SOA) and facilitates seamless inter-process communication (IPC).

It is all about providing a seamless experience for inter-process communication, featuring versatile messaging patterns. Whether you're diving into publish-subscribe, events, request-response, or the promise of upcoming features like pipelines, and blackboard, iceoryx2 has you covered.

One of the features of iceoryx2 is its consistently low transmission latency regardless of payload size, ensuring a predictable and reliable communication experience.

iceoryx2's origins can be traced back to iceoryx. By overcoming past technical debts and refining the architecture, iceoryx2 enables the modularity we've always desired.

In the near future, iceoryx2 is poised to support at least the same feature set and platforms as iceoryx, ensuring a seamless transition and offering enhanced capabilities for your inter-process communication needs. So, if you're looking for lightning-fast, cross-platform communication that doesn't compromise on performance or modularity, iceoryx2 is your answer.

Feel free to join the Gitter Chat or the Developer Meetup if you want to have a chat with the developers of iceoryx.

Performance

Comparison Of Mechanisms

benchmark of different mechanism

Benchmark-System

  • CPU: Intel i7 13700h
  • OS: Linux 6.10.10-arch1-1 #1 SMP PREEMPT_DYNAMIC
  • Compiler:
    • rustc 1.81.0
    • gcc 14.2.1 20240910

Comparison Of Architectures

benchmark on different systems

Documentation

User Documentation

Contributor Documentation

API References

Supported Platforms

The support levels can be adjusted when required.

Operating System State Current Support Level Target Support Level
Android proof-of-concept1 - tier 1
Bare Metal proof-of-concept2 - tier 1
FreeBSD done tier 2 tier 1
FreeRTOS planned - tier 2
ThreadX planned - tier 2
iOS planned - tier 2
Linux (x86_64) done tier 2 tier 1
Linux (aarch64) done tier 2 tier 1
Linux (32-bit) done tier 2 tier 1
Mac OS done tier 2 tier 2
QNX 7.1 done tier 3 tier 1
QNX 8.0 done tier 3 tier 1
RTEMS planned - tier 2
Redox OS planned - tier 2
VxWorks proof-of-concept3 - tier 1
WatchOS planned - tier 2
Windows done tier 2 tier 2
  • tier 1 - All safety and security features are working.
  • tier 2 - Works with a restricted security and safety feature set.
  • tier 3 - Not tested in our CI, so may or may not compile and run.

Language Bindings

Language State
C done
C++ done
C# done4
Dart planned
Go planned
Java planned
Kotlin planned
Lua planned
Python done
Swift planned
Typescript planned
Zig planned

Commercial Support

ekxide IO GmbH
info@ekxide.io
  • commercial extensions and tooling
  • custom feature development
  • training and consulting
  • integration support
  • engineering services around the iceoryx ecosystem

Thanks To All Contributors

Thanks to everyone who has contributed to iceoryx2. Without their passion and dedication, the project wouldn't thrive. A list of people who have committed code can be found on github. However, contributions are not limited to code - testing the software, reporting bugs, and spreading the word about iceoryx2 are all equally valuable. A big thank you as well to those 'invisible' contributors who play a crucial role behind the scenes.

  1. A proof-of-concept for Android platform support is available. Currently only local, inter-thread communication works. ↩

  2. A proof-of-concept with no_std bare-metal support is available. The event messaging-pattern does not yet work and the memory usage is not yet optimized. ↩

  3. A proof-of-concept for VxWorks platform support is available on this branch on the ekxide fork ↩

  4. C# bindings are available in a separate repository. May not be up to date with main. ↩

Metadata

Release files for iceoryx2 0.10.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for iceoryx2 0.10.0
File Size Uploaded
iceoryx2-0.10.0.tar.gz 963.5 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for iceoryx2 0.10.0
File
iceoryx2-0.10.0-cp314-cp314t-win_amd64.whl CPython 3.14 CPython 3.14 free-threading Windows x86-64 Details
iceoryx2-0.10.0-cp314-cp314t-manylinux_2_34_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ x86-64 Details
iceoryx2-0.10.0-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
iceoryx2-0.10.0-cp38-abi3-win_amd64.whl CPython 3.8 abi3 Windows x86-64 Details
iceoryx2-0.10.0-cp38-abi3-manylinux_2_34_x86_64.whl CPython 3.8 abi3 Linux glibc 2.34+ x86-64 Details
iceoryx2-0.10.0-cp38-abi3-macosx_11_0_arm64.whl CPython 3.8 abi3 macOS 11.0+ ARM64 Details

Total release size: 9.7 MB

Release files / iceoryx2-0.10.0.tar.gz

Download URL iceoryx2-0.10.0.tar.gz
Size 963.5 kB
Tags Source
SHA-256 checksum
How to use checksums
62db7f0935ade10b18de17600952e579e9458704c337113428a91becac9bc454
BLAKE2b-256 checksum
How to use checksums
0884ebdc6feb7b785934d02ba0fb85097c087e1507eba9dad5e030b61407ec63
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.7

Release files / iceoryx2-0.10.0-cp314-cp314t-win_amd64.whl

Download URL iceoryx2-0.10.0-cp314-cp314t-win_amd64.whl
Size 1.4 MB
Tags CPython 3.14 CPython 3.14 free-threading Windows x86-64
SHA-256 checksum
How to use checksums
c8804b4c1ace3336a8b7e7b21689d768531e909e60bad83ff5ac593774404ca9
BLAKE2b-256 checksum
How to use checksums
2df3414b690103feffc4319de5b56345d00807f8523fe1bb6f13a14e7bd83756
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.7

Release files / iceoryx2-0.10.0-cp314-cp314t-manylinux_2_34_x86_64.whl

Download URL iceoryx2-0.10.0-cp314-cp314t-manylinux_2_34_x86_64.whl
Size 1.6 MB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.34+ x86-64
SHA-256 checksum
How to use checksums
2ced280282eadcea8ffa9a19620ea5c91b3979f3de4dbe7c60476c9cf511a4f7
BLAKE2b-256 checksum
How to use checksums
da26adad4491fd3db3683a8e02ea13335c9dd859a90df31a8eb9931dd8e17ca0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.7

Release files / iceoryx2-0.10.0-cp314-cp314t-macosx_11_0_arm64.whl

Download URL iceoryx2-0.10.0-cp314-cp314t-macosx_11_0_arm64.whl
Size 1.3 MB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
ec38f5efff603e99cc69945260d8a59c4c4fb4f635af3fd92f37b0e389890e98
BLAKE2b-256 checksum
How to use checksums
1e2d8ad4a73d4ddbc96ac0c25267deacea273c77cbf1155048ac35302f946f8b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.7

Release files / iceoryx2-0.10.0-cp38-abi3-win_amd64.whl

Download URL iceoryx2-0.10.0-cp38-abi3-win_amd64.whl
Size 1.4 MB
Tags CPython 3.8 Windows x86-64 abi3
SHA-256 checksum
How to use checksums
310508803231ec2bed5c2b0ff11f5f988247622a7c787554411bcd87a814aa6a
BLAKE2b-256 checksum
How to use checksums
947f9acc30c018b57bb7167a6cac9a4d7501b70d44ceb8752e2865d6cdf2ff16
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.7

Release files / iceoryx2-0.10.0-cp38-abi3-manylinux_2_34_x86_64.whl

Download URL iceoryx2-0.10.0-cp38-abi3-manylinux_2_34_x86_64.whl
Size 1.6 MB
Tags CPython 3.8 Linux glibc 2.34+ x86-64 abi3
SHA-256 checksum
How to use checksums
45b1750565cb6f45faf13da60ae194b0e70e8a53c9b6d9abce9df3022035b144
BLAKE2b-256 checksum
How to use checksums
ec57886de693897ef720760876b891b77c188637586e621b92bef7dda6b80510
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.7

Release files / iceoryx2-0.10.0-cp38-abi3-macosx_11_0_arm64.whl

Download URL iceoryx2-0.10.0-cp38-abi3-macosx_11_0_arm64.whl
Size 1.3 MB
Tags CPython 3.8 abi3 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
562c90a26a7a7700ce4cfb8bbeb1998ceae179a18b01a8be1b99cee17d158365
BLAKE2b-256 checksum
How to use checksums
6cc118f070a0ad2d37209831f6195c9837e13921504a611579b223ff579c1e81
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.7
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page