0
$\begingroup$

Rosanswers logo

Currently we are working with an 11 man team on a research project where we use ROS electric to control a large number of devices in a grid of multiple robot systems.

For this project we are trying to benchmark the amount of nodes and topics that could be used with a single ROS core. So far we noticed that depending on the design (we tried several) the system becomes unstable / unreliable if we use (for example) over 50 topics.

We are quite new using ROS and are trying to determine if ROS topics could be used as a middleware solution when using multiple robots run on a single ROS core with a large amount of nodes and topics.

Does anyone have any experience using ROS with large amount of nodes / topics?

Are there any benchmark results available?


Originally posted by DTelgen on ROS Answers with karma: 11 on 2011-09-21

Post score: 1

$\endgroup$

2 Answers 2

0
$\begingroup$

Rosanswers logo

We tested the ros topics with a program that spawns about 500 nodes and just as many topics. They are connected through a tree-like structure.

The first thing we noticed is that after all the nodes and topics have been created, the rosout process often uses a lot of processor time, up to 100%.

Also, when shutting down all the nodes (with Ctrl-C), the roscore seems to think some nodes are still running when looking at the output of the rxgraph program. I confirmed the nodes were not running as they didn't show up in the system monitor. Restarting the roscore solves the problem, but this is not ideal ofcourse.

Has anyone experienced these problems too, or does someone have any idea what we may doing wrong?

(I am an engineer in the same team as DTelgen)


Originally posted by FPape with karma: 26 on 2011-09-30

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by Lorenz on 2011-09-30:
I think one problem you have is caused by starting up/shutting down all nodes at the same time because they all need to register/unregister at the master. Maybe the master cannot handle all connections at the same time. Also, to get rid of dead nodes, you can do a rosnode cleanup.

$\endgroup$
0
$\begingroup$

Rosanswers logo

Starting up the PR2 without any additional nodes such as navigation or perception already creates more than 50 nodes and about 500 topics. There reliability is not an issue at all.

In a multi-robot scenario with just one core reliability of the connections between the different robots will become an issue because topic connections might die if the network goes down temporarily.


Originally posted by Lorenz with karma: 22731 on 2011-09-21

This answer was NOT ACCEPTED on the original site

Post score: 3

$\endgroup$

Your Answer

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