Luos-io / luos_engine

Open-source and real-time orchestrator for cyber-physical-systems, to easily design, test and deploy embedded applications and digital twins.
https://www.luos.io
MIT License
512 stars 54 forks source link

[BUG] Gate auto-update with big RTB #129

Open nicolas-rabault opened 2 years ago

nicolas-rabault commented 2 years ago

Describe the bug When we create a lot of auto-update at the same time all the services reply in a short period of time. But after few seconds we can see that this period of time become larger and larger. The space between boards diverge.

Network configuration

How to reproduce the bug Just use a gate with some service with the standard configuration

Additional context The auto-update feature have a ms granularity. We could reduce this granularity to reduce this divergence. Most importantly auto-update is computed on luos_loop(). If Luos_loop is executed later after the deadline we create divergence because after send the message we do : new_trigger_date = current_time + update_time We should do : new_trigger_date = last_trigger_date + update_time

JeromeGalan commented 2 years ago

Should be caused by ms granularity. Test with precise timer (ns granularity)