ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

_Each_ publisher is publishing at 1000Hz? That's your main problem. You have 8000 messages/second. Python is not truly multithreaded. Instead, there is a _global interpreter lock_ that causes only one thread to run at a time. It's like your 8 subscribers are sharing a single CPU. At a total message rate of 8KHz, you must process each message in only 125 microseconds, including any thread switching and unmarshaling overhead. Python is not designed to handle that kind of load.

You're better off reducing the publishing rate to something more reasonable, say 100Hz. Try that and see if your Python code behaves reasonably again.