Upcoming a new RMW Implementation RMW_SWIFTDDS by Greenstone

We are excited to announce that a new ROS2 RMW (ROS Middleware) layer implementation based on SWIFT_DDS will be released soon! This integration enables ROS2 developers to leverage the high-performance, safety-certified commercial DDS communication middleware developed by Greenstone Technology Co., Ltd.

This RMW implementation contains one projects:

About Greenstone

Greenstone Technology Co., Ltd.​ (Greenstone) was founded in 2020 by a team with strong roots in Tsinghua University. The company brings together years of research and commercial experience across multiple domains including communications, computer science, intelligent driving, and artificial intelligence. Greenstone is dedicated to building fully autonomous and controllable intelligent driving foundational software platforms through its proprietary core technologies.

For more information, please visit https://www.greenstonesoft.com/en_homepage.

About SWIFT_DDS

1. Remarkable Performance & High reliability

  • Commercial DDS product with 6 years of R&D and verifications by projects from OEMs and Tier1’s

  • Proprietary deterministic execution/communication technology, guarantee the real-time data communication

  • Low overhead and high throughput

  • Efficient resource utilization

2. Industry-Leading Safety Guarantees

  • ISO 26262 ASIL-D​ functional safety product certification

  • Suitable for safety-critical applications in autonomous driving

  • Compliant with MISRA C/C++ coding standards and pass static code analysis in QAC

  • Comprehensive tests (unit, integration, embedded, and fault injection) achieving 100% safety requirements coverage and mandatory MC/DC code coverage, as required by ISO 26262 ASIL-D certification

3. Minimum Dependency

  • No third-party codes included

  • Can be easily customized/extended according to users’ needs

  • Support a wide range of SoC/OS and MCU/RTOS. Easy for cross-platform porting

4. Full DDS Standard Compliance and performance-enhancing extensions

  • Full compliance with DDS standard specifications

  • Support for all DDS QoS policies

  • Seamless interoperability with other DDS implementations

  • Supported Customized Features:

    • ZeroCopy: Enables direct data transfer mechanisms to eliminate unnecessary memory copying operations

    • Inter-core communication: Support direct inter-core communication on heterogeneous chips (Horizon Robotics Journal 6, TDA4, S32G, etc.) such as arm A Core with R Core and arm A Core with M Core

    • UDP_FlowControl: Supports configuring DataWriter transmission and DataReader reception bandwidth at the process level, with flexible options to set either individually or simultaneously—the most restrictive flow limit will take effect

    • PreferTransportOrder: Dynamically selects the optimal communication channel based on the configured channel priority order

    • NetworkPortRangeQoSPolicy: Restricts processes to operate within a specified UDP port range

    • ThreadInstanceConfigQoSPolicy: When enabled, elevates thread resources from the participant level to the process level, reducing the number of threads created for nodes

5. Comprehensive toolchains that further accelerate system integration

  • Developers only need to focus on the intelligent driving logic and algorithms. Compatible with common intelligent driving chips, help fast integration and verification of intelligent driving products

Performance Results

Based on the ROS2 standard performance testing framework (https://github.com/ros2/performance_test), we executed systematic performance evaluations of SWIFT_DDS for both fixed-length array data and variable-length string data.

I. Hardware Configuration

1. CPU: x86_64, Intel(R) Xeon(R) E-2314 CPU, 4 cores/4 threads, 2.80 GHz

2. Memory: 32 GB DDR4 3200 MHz

3. Network Card: NetXtreme BCM5720 Gigabit Ethernet PCIe

II. System Configuration

1. Operating System: Ubuntu 24.04 LTS, kernel 6.8.0-87-generic, x86_64

2. Compiler: GCC 13.3.0

The tests covered key metrics including latency, throughput, and CPU utilization. The results show that SWIFT_DDS delivers excellent performance across all tests. Detailed data and testing methodologies are documented in the attached test report(https://greenstonesoft.github.io/performance_test_report/swift_array_result.html,https://greenstonesoft.github.io/performance_test_report/swift_string_result.html), and we welcome the community to review and provide feedback.

The Merge Request for the RMW_SWIFTDDS binary package has now been submitted. Once the implementation is approved and officially released, we will post an update announcement here. Stay tuned for further updates!Thanks.

Below is some test result excerpted from the attached test report. The latency results for different transport channels are shown: Intra-process communication using local transmission (INTRA), inter-process communication using shared memory transmission (SHMEM), and inter-process communication using zero_copy transmission (Zero Copy), for fixed-lengh data type (array) packets with packet size 1k, 4k, 16k, 64k, 256k, 1M, 4M, and ROS_DISABLE_LOANED_MESSAGES=0.

2 Likes