Skip to main content
ROS2-DDSConfig-Optimizer 是一个由 LLM 驱动的 FastDDS 配置自动调优器。您向它提供性能目标(延迟、吞吐量、可靠性、CPU、内存)以及一个基线 DDS XML,它会迭代地运行您的应用程序、进行基准测试并变异 DDS 参数,直到达成目标。
由 Qualcomm 构建,但与 SoC 无关——它可以在任何运行 ROS 2 Humble 或 Jazzy 的 Ubuntu 主机上运行,无需 Qualcomm 硬件。之所以列在本节,是因为它是 QRB ROS 生态系统的一部分,体现了 Qualcomm 对广泛适用的 ROS 2 工具(而不仅仅是芯片底层管道)的投入。

为什么 DDS 调优是一个值得自动化的问题

DDS 暴露了数百个调节旋钮——可靠性 QoS、历史深度、心跳周期、套接字缓冲区、参与者发现、传输描述符。大多数团队要么保留默认值并承受延迟,要么针对每个工作负载手工调优数周。此工具将 DDS 配置视为一个黑盒优化问题,并将参数搜索委托给一个驱动 FastDDS XML 的 LLM。

快速入门

使用 uv(≥ 0.7.8)进行 Python 环境管理。
1

克隆并同步

2

提供目标和基线配置

在 user_requirements_template.xml 中填写您的延迟/吞吐量/可靠性/资源目标,并在 fastdds_config_template.xml 中填写您的基线 DDS 配置。
3

运行优化器

最佳配置会写入 data/optimization_history/。
4

查看仪表板

打开 http://localhost:5000/ 浏览迭代历史并比较配置。

要求

为什么这有帮助

这是 ROS 2 生态系统中唯一将 DDS 配置视为黑盒优化问题、并由 LLM 驱动搜索的工具。向它提供性能目标和基线 XML,即可获得调优后的配置,而无需阅读 FastDDS 规范。

相关内容