2 ms·
Always exciting to see more innovation in the robotics middleware space! Do you have a zero copy/serialization way that nodes can output messages back to their
by amacneil 2y ago
Always exciting to see more innovation in the robotics middleware space!
Do you have a zero copy/serialization way that nodes can output messages back to their own input?
For example I have always thought that full determinism would be much easier to achieve if all nodes were purely functional/stateless, and if they want to accumulate data over multiple messages they must do so by explicitly outputting that state back to themselves.
This would mean that all state can be logged (if necessary), and therefore resimulation tests could start with a single tick, rather than needing to play back several seconds of data because there is no way to reason about what local state nodes might be maintaining.
- a_t48 2y agoYes, though I'd want to add special detection for this case - to ensure that there are no runtime race conditions for having or not having a state from last frame. No serialization occurs unless the message goes over a non-inproc transport (unserializable inproc only messages are possible, too!). I've considered this kind of idea before - I'd likely try to make it a first class citizen of the framework, in that case. Declare it in the definition for your node what kind of state it keeps, rather than try and shoehorn it into the pubsub system. I'd have some worry about the performance cost of it, though, for large states.