自动驾驶间件水杉和Apollo CyberRT性能对比
实验使用笔记本处理器:Intel® Core™ i7-4710HQ CPU @ 2.50GHz × 8,内大小8GB,操作系统Ubuntu22.04,分别在各自的docker容器内运行,都使用各自的默认配置不做调优,比较不同通信消息大小下的进程间平均通信时延。实验每次重启电脑后要么运行一个Apollo docker容器,要么运行水杉docker容器,除了打开一个终端和容器外,不打开其他如浏览器等程序。
1:Apollo CyberRT代码版本:master分支,commit id:455090bb85807df9a2a1d47632ae9dc8a09f075e
其性能测试程序是CyberRT的talke和listener程序,使用默认配置,只修改通信使用的examples.proto。
具体将examples.proto中的Chatter消息改为如下:
message Chatter {
required int32 x = 1;
required int32 y = 2;
required int32 z = 3;
required int32 speed = 4;
required uint64 timestamp = 5;
required int32 acc = 6;
required bytes content = 7;
};
cyberRT的发送端talker程序每次发送消息时,先填充1、2、3、4、6、7域,最后填充5域(即timestamp字段),然后发送到cyberRT的通道中;每次实验时向content域中填充不同大小的数据,总体上Chatter消息总大小不超过指定的大小。talker发送Chatter消息10万条。
cyberRT的接收端listener,在接收消息的回调函数中,使用cyberRT的Time组件获取当前时间,然后减去接收到消息中timestamp,作为通信此次通信时延。
2:水杉中间件发送端和接收端是水杉中间件简单的talker、listener程序,两个进程,talker发送TestMsg消息10万条,使用与CyberRT类似的消息格式,具体消息如下:
const int TestMsgTotalSize = 1024;
struct TestMsg {
int32_t x;
int32_t y;
int32_t z;
int32_t speed;
uint64_t timestamp;
int32_t acc;
int32_t msgLen;
char msg[TestMsgTotalSize - 64];
};
每次实验时调整TestMsgTotalSize 的大小,即调整msg域的容量,以保证消息总大小为指定的大小。数据填充和通信时延计算方式与CyberRT的相同。
3:实验结果对比
1KB消息平均时延(单位纳秒):
CyberRT中间件约1KB消息平均时延
水杉中间件1KB消息平均时延
2KB平均时延(单位纳秒)
CyberRT中间件约2KB消息平均时延
水杉中间件2KB消息平均时延
4KB平均时延(单位纳秒)
CyberRT中间件约4KB消息平均时延
水杉中间件4KB消息平均时延
8KB平均时延(单位纳秒)
CyberRT中间件约8KB消息平均时延
水杉中间件8KB消息平均时延
1MB平均时延(单位纳秒)
CyberRT中间件约1MB消息平均时延
水杉中间件1MB消息平均时延
2MB平均时延(单位纳秒)
CyberRT中间件约2MB消息平均时延
水杉中间件2MB消息平均时延
4MB消息平均时延(单位纳秒)
CyberRT中间件约4MB消息平均时延
水杉中间件4MB消息平均时延
8MB消息平均时延(单位纳秒)
CyberRT中间件约8MB消息平均时延
水杉中间件8MB消息平均时延
4:结论
通过以上实验可以发现,水杉中间件的进程间通信性能,在不同消息大小下通信时延一直保持稳定,处于微秒级别,且与通信消息大小无关。在自动驾驶领域,水杉中间件可以大幅减少自动驾驶系统模块间的通信时延,为模块留有更多的计算时间,为自动驾驶系统在不增加硬件成本的情况下使用更复杂的模块算法提供了可能性;也可以在不改变自动驾驶系统模块算法和硬件的情况下,提升自动驾驶系统的计算控制频率,增加自动驾驶系统的安全性可靠性。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhiackkh
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22 -
excel打印预览压线压字怎么办
PHP中文网 06-22