很久没写博客了,最近有时间总结一下工作内容,顺便记录一下
性能测试 – 百度Apollo Cyber_RT 6.0
1.1一对多的情况: 一个发送者,三个接收者。目的是保障三个接受者可以有顺序的接收,优先级高的接收者最先获取数据,以此类推。(测试数据大小为10KB)
测试结果:发送者以2ms(rate(500))频率发送。接受者可以按照2ms时间间隙接收。但是接收过程会有无序,时间间隔抖动现象。大于10ms间隙后无乱序以及抖动等现象。
绿色方框内:标示接收者_1 时间自上而下时间间隔大致控制在2ms。
红色方框内:标示接收者_2 时间自上而下时间间隔抖动。
黑色方框内:标示接收者_3 时间自上而下时间间隔大致控制在2ms。
这里备注一点:所有接收程序均采用跨进程通讯。(动态共享内存方式)
1.2多对多情况:三个发送者,三个接收者。目的是测试接收者按照预期接收数据。(测试数据大小为10KB)
测试结果:mainboard启动三个定时时器,以:
- 不同周期向外发送数据 数据接收在不同的时间周期接收,接收误差在1-2ms之内。其中传输延时1ms左右。
相同数据向外发送数据极限情况三个定时间隔为6ms,未使用-p 参数调整优先级 定时发送端 1 2 3 没有按照设计预期,有序发送。
接下里看使用-p参数使用优先级的情况:时间间隔为6ms,发送顺序为 1 -2 -3
1.3多对一的情况:多个发送者,一个接收者。目的是测试接受者是否可以按照最小或者最大的时间周期合并数据。接收者_1 与接收者_2 采用不同的周期向外发送数据,接收者_4模拟融合数据处理。
测试结果:接收者_4按照主通道的周期触发接收数据。
主通道周期小,附属通道数据未及时更新:主通道周期是附属通道周期的一倍,以主通道时间周期触发接收,附属通道连续两帧数据未更新。
主通道周期大,附属通道数据及时更新:主通道周期是附属通道周期的一半,以主通道时间周期触发接收,附属通道数据相邻跳过一帧。