Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for clock-synchronization #78

Open
erlingrj opened this issue Oct 20, 2024 · 1 comment
Open

Add support for clock-synchronization #78

erlingrj opened this issue Oct 20, 2024 · 1 comment
Assignees

Comments

@erlingrj
Copy link
Collaborator

Clock synchronization is necessary for federations to operate correctly in real-time. We have two alternatives:

  1. Add clock-sync as a runtime feature. Inspired by reactor-c
  2. Develop a library reactor doing clock sync that can be instantiated in the federate
@erlingrj
Copy link
Collaborator Author

After a discussion with @edwardalee and @tanneberger we will initially go with (2). A few points:

  1. Clock-sync ports should be connected with physical connections, because then the time-of-reception will be the logical tag of the event triggering the reaction handling it.
  2. To minimize the time between reading physical time and storing it in the payload of an event, and the time where the event is sent over a connection, we should make this happen at a very odd tag where nothing else is happening in the federate. We can do that by scheduling an action at (current_time, UINT32_MAX) which is unlikely to coincide with anything.

@erlingrj erlingrj self-assigned this Oct 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant