Questions about improving the ROS real-time method

Hi,

from you question it is hard to understand the root of the problem. Is it throughput or latency/jitter?

It is hard to believe that a SLAM algorithm, that usually runs at less than 30 hz, might have any problem of latency when PREEMP_RT is installed.

I agree that ROS 1 is not meant to be used to build real-time system, but usually you notice this limitation with control algorithms that runs at 200+ Hz.
Using Orocos without understanding what the problem is, it is probably the wrong thing to do. Additionally, I suggest you to first understand what makes orcos different from ROS and in which cases it helps

My instinct is telling me that your problem is not real-time but a wrong utilization of your CPU. May be you are running an algorithm that can be parallelized to use all the CPUs of your system at once and meet your time constraints.

I suggest you to carefully profile your application to understand what the bottleneck is.

EDIT: If you do think the problem is latency and NOT throughput, try using ros_control and nodelets.

Davide

1 Like