0
$\begingroup$

Rosanswers logo

Hi,

I've build a simple packet reflector to test the roundTrip delay time of packets. I'm using the udp protocol (I've tested the others too) and am publishing at a rate of 1 kHz. The average round trip time I'm seeing is ~0.25 ms, but sometimes (even with UDP) the roundtrip time is above 1ms (even up to 9 ms!)

The system I'm exploring using ROS with is a telesurgical system, so low latency is critical!

Is anyone currently using ROS for teleoperation? What is your latency?

Thanks!


Originally posted by drewd4v15 on ROS Answers with karma: 21 on 2011-05-24

Post score: 2

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Is this latency on the same machine? If not, I'd check your network latency first with pings. ROS can't do anything to reduce network latency.

If it's all on the same machine. The next step would be to profile the code to see where the slow down is using either valgrind's callgrind or perhaps sysprof

Also, if you need to make sure that the ROS processes are guaranteed CPU time, and not affected by other process you should probably look into a realtime processing library like Xenomi along with rosrt. ROSRT can also slightly improve performance by avoiding memory allocations by preallocating. Those speed-ups should probably be helpful even if not running a real time system if small margins are important.


Originally posted by Asomerville with karma: 2743 on 2011-05-24

This answer was ACCEPTED on the original site

Post score: 1

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.