NOTE: following tests were done in May. 2025, which may not reflect latest status of the package. |
AimRT 1.0.0-cpp Performance Test Report
Preface
AimRT’s communication layer is implemented via plugins. The officially supported backends include Iceoryx, ROS2, Zenoh, Net, Grpc, Mqtt, etc., covering common edge and cloud communication scenarios. These plugins provide two common communication patterns—publish-subscribe (Channel)
and request-response (Rpc)
—to enable multi-process communication both locally
and across machines
.
Test Environment
System Environment:
OS: 6.1.59-rt16 x86_64 GNU/Linux
CPU: 13th Gen Intel® Core™ i5-1350P
Total/Available Memory: 62 Gi / 38 Gi
Software Environment:
AimRT Version: 1.0.0
Test Items
Tests were conducted using AimRT-cpp. The test items are as follows:
Single-machine performance tests
Channel backend performance tests
Impact of packet size in multi-topic mode
Impact of topic count in multi-topic mode
Impact of packet size in parallel mode
Impact of concurrency in parallel mode
Rpc backend performance tests
Impact of packet size in bench mode
Impact of concurrency in bench mode
Impact of packet size in fixed_freq mode
Impact of concurrency in fixed_freq mode
Multi-machine performance tests
Channel backend performance tests
Impact of packet size in multi-topic mode
Impact of topic count in multi-topic mode
Impact of packet size in parallel mode
Impact of concurrency in parallel mode
Rpc backend performance tests
Impact of packet size in bench mode
Impact of concurrency in bench mode
Impact of packet size in fixed_freq mode
Impact of concurrency in fixed_freq mode
Test Results
Single-machine Performance Test (X86)
Channel Backend Performance Tests
Impact of Packet Size in Multi-topic Mode:
Purpose: Evaluate performance of single-machine cross-process Channel backend in multi-topic mode under different
packet sizes
Configuration:
channel_frequency: 1 kHz
pkg_size: 256 B ~ 64 KB (2^8 ~ 2^16, increasing by powers of 2)
topic_number: 1
parallel_number=1
Results:
Impact of Topic Count in Multi-topic Mode:
Purpose: Evaluate performance of single-machine cross-process Channel backend in multi-topic mode under different
topic counts
Configuration:
channel_frequency: 1 kHz
pkg_size: 1024 B
topic_number: 1 ~ 10
parallel_number=1
Results:
Impact of Packet Size in Parallel Mode:
Purpose: Evaluate performance of single-machine cross-process Channel backend in parallel mode under different
packet sizes
Configuration:
channel_frequency: 1 kHz
pkg_size: 1024 B
topic_number: 1
parallel_number=1 ~ 10
Results:
Impact of Concurrency in Parallel Mode:
Purpose: Evaluate performance of single-machine cross-process Channel backend in parallel mode under different
concurrency levels
Configuration:
channel_frequency: 1 kHz
pkg_size: 1024 B
topic_number: 1
parallel_number=1 ~ 10
Results:
Rpc Backend Performance Tests
Impact of Packet Size in Bench Mode:
Purpose: Evaluate performance of single-machine cross-process Rpc backend in bench mode under different
packet sizes
Configuration:
mode: bench
channel_frequency: 1 kHz
pkg_size: 256 B ~ 64 KB (2^8 ~ 2^16, increasing by powers of 2)
paraller_number: 1
Results:
Impact of Concurrency in Bench Mode:
Purpose: Evaluate performance of single-machine cross-process Rpc backend in bench mode under different
concurrency levels
Configuration:
mode: bench
channel_frequency: 1 kHz
pkg_size: 1024 B
paraller_number: 1 ~ 10
Results:
Impact of Packet Size in Fixed-freq Mode:
Purpose: Evaluate performance of single-machine cross-process Rpc backend in fixed-freq mode under different
packet sizes
Configuration:
mode: fixed-freq
channel_frequency: 1 kHz
pkg_size: 256 B ~ 64 KB (2^8 ~ 2^16, increasing by powers of 2)
paraller_number: 1
Results:
Impact of Concurrency in Fixed-freq Mode:
Purpose: Evaluate performance of single-machine cross-process Rpc backend in fixed-freq mode under different
concurrency levels
Configuration:
mode: fixed-freq
channel_frequency: 1 kHz
pkg_size: 1024 B
paraller_number: 1 ~ 10
Results:
Cross-machine Performance Test
Channel Backend Performance Tests
Impact of Packet Size in Multi-topic Mode:
Purpose: Evaluate performance of single-machine cross-process Channel backend in multi-topic mode under different
packet sizes
Configuration:
channel_frequency: 1 kHz
pkg_size: 256 B ~ 64 KB (2^8 ~ 2^16, increasing by powers of 2)
topic_number: 1
parallel_number=1
Results:
Impact of Topic Count in Multi-topic Mode:
Purpose: Evaluate performance of single-machine cross-process Channel backend in multi-topic mode under different
topic counts
Configuration:
channel_frequency: 1 kHz
pkg_size: 1024 B
topic_number: 1 ~ 10
parallel_number=1
Results:
Impact of Packet Size in Parallel Mode:
Purpose: Evaluate performance of single-machine cross-process Channel backend in parallel mode under different
packet sizes
Configuration:
channel_frequency: 1 kHz
pkg_size: 1024 B
topic_number: 1
parallel_number=1 ~ 10
Results:
Impact of Concurrency in Parallel Mode:
Purpose: Evaluate performance of single-machine cross-process Channel backend in parallel mode under different
concurrency levels
Configuration:
channel_frequency: 1 kHz
pkg_size: 1024 B
topic_number: 1
parallel_number=1 ~ 10
Results:
Rpc Backend Performance Tests
Impact of Packet Size in Bench Mode:
Purpose: Evaluate performance of single-machine cross-process Rpc backend in bench mode under different
packet sizes
Configuration:
mode: bench
channel_frequency: 1 kHz
pkg_size: 256 B ~ 64 KB (2^8 ~ 2^16, increasing by powers of 2)
paraller_number: 1
Results:
Impact of Concurrency in Bench Mode:
Purpose: Evaluate performance of single-machine cross-process Rpc backend in bench mode under different
concurrency levels
Configuration:
mode: bench
channel_frequency: 1 kHz
pkg_size: 1024 B
paraller_number: 1 ~ 10
Results:
Impact of Packet Size in Fixed-freq Mode:
Purpose: Evaluate performance of single-machine cross-process Rpc backend in fixed-freq mode under different
packet sizes
Configuration:
mode: fixed-freq
channel_frequency: 1 kHz
pkg_size: 256 B ~ 64 KB (2^8 ~ 2^16, increasing by powers of 2)
paraller_number: 1
Results:
Impact of Concurrency in Fixed-freq Mode:
Purpose: Evaluate performance of single-machine cross-process Rpc backend in fixed-freq mode under different
concurrency levels
Configuration:
mode: fixed-freq
channel_frequency: 1 kHz
pkg_size: 1024 B
paraller_number: 1 ~ 10
Results: