> > > In general, nodelets should not be abused. If the performance of nodes > (copy/(de)serialization) is really what's > dragging your processing graph down, then sure, nodelets are offering a > viable alternative. However, this should really > be profiled first for each application. > > This isn't entirely true. Adding processes also means adding threads, which increases context switches/etc. Having everything in a single process means more control over everything. There's a reason game consoles run a single process, and that process generally has # threads == # cores. I think in the "ideal" world everything that can be a nodelet should be, and a fully-debugged application would be a single process running many nodelets. In practice there are likely exceptions (like, say, GUI applications), but overall I think it's a reasonable goal. Josh