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

Measuring callback invocation time #901

Open
varsill opened this issue Oct 29, 2024 · 0 comments
Open

Measuring callback invocation time #901

varsill opened this issue Oct 29, 2024 · 0 comments

Comments

@varsill
Copy link
Contributor

varsill commented Oct 29, 2024

The idea is to add a simple mechanism to measure how long does callback's invocation takes (for each callback in elements, bins and pipelines) and warn in case it takes longer than assumed threshold value.
It could help in debugging problems where Membrane component becomes unresponsive because it's busy with running a callback.
By default, the threshold could be set to :infinity (for this value we could prune time measurements during compilation so that to make sure we don't affect performance).
This mechanism wouldn't solve the problem where component is infinitely stuck on particular callback invocation, as the warning would be printed when the callback finishes. At the same time, these types of types of problems can be easily debugged with Process.info(:current_function).

@mat-hek mat-hek added this to Smackore Oct 29, 2024
@mat-hek mat-hek moved this to Backlog in Smackore Oct 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Backlog
Development

No branches or pull requests

1 participant