Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Re number of connections: AFAIK, all roscpp's IO happens in a select loop (, so one thread can service many connections. The select() call, though is O(n) in the number of connections. There is a Linux specific epoll() which handles large numbers of connections more efficiently. This page discusses some general networking/scalability issues:

Re latency: roscpp message latency is ~100us on recent Intel CPUs under Linux PREEMPT_RT. This is 10-20 times slower than direct kernel sockets and IPC. Benchmark code: Some discussion in our recent article: