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

Implement update frequency tiers for cycles #56

Open
cyberbit opened this issue Jun 28, 2024 · 0 comments
Open

Implement update frequency tiers for cycles #56

cyberbit opened this issue Jun 28, 2024 · 0 comments
Labels
enhancement New feature or request sw: API Library design, specification, and usage

Comments

@cyberbit
Copy link
Owner

Some metric providers may interact with components that have a variety of metric types. Some of these metrics may be static, others may update once every minute, even more may be expected to update every tick. The current design treats all metrics the same, updating every metric during every cycle.

If an input adapter tightly integrates with its components (such as the Mekanism input adapters), it is fair to say there would be established knowledge on which metrics update "fast" and "slow".

The Backplane could be configured to support several cycle speeds, prioritizing certain inputs to be read more often than others in the same period of time. Input adapters themselves could define their APIs in such a way to divide the metrics into groups, like "fast", "slow", and "static". These groups would have default cycle times, but could be overridden by a user.

However, this introduces a challenge with how the Output Adapters should behave. Some output adapters may not benefit from accelerated update times, or cause confusing/corrupted results. Other outputs would greatly benefit, such as charts and other visual indicators.

This issue will serve as a place to record ideas during the planning of this feature.

@cyberbit cyberbit added enhancement New feature or request sw: API Library design, specification, and usage labels Jun 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request sw: API Library design, specification, and usage
Projects
None yet
Development

No branches or pull requests

1 participant