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 localised queue signalling on free slots #168

Merged
merged 1 commit into from
Sep 12, 2024
Merged

Add localised queue signalling on free slots #168

merged 1 commit into from
Sep 12, 2024

Conversation

Bo98
Copy link
Member

@Bo98 Bo98 commented Sep 12, 2024

Instead of a global free slot condition variable, be smarter and signal only the connected start processor of the free slot.

This on its own doesn't do very much and saves a very small number of CPU cycles, but it does enable the flexibility to pass on this signal to the internal job queue condition variable. This is useful as since we added queue categorisation, a waiting queue no longer means it is empty and it could just mean there were no free slots for that specific subqueue, so we should signal it when there's a potential change in job slot distribution.

Instead of a global free slot condition variable, be smarter and signal only the connected start processor of the free slot.

This on its own doesn't do very much and saves a very small number of CPU cycles, but it does enable the flexibility to pass on this signal to the internal job queue condition variable. This is useful as since we added queue categorisation, a waiting queue no longer means it is empty and it could just mean there were no free slots for that specific subqueue, so we should signal it when there's a potential change in job slot distribution.
@Bo98 Bo98 merged commit d698969 into main Sep 12, 2024
4 checks passed
@Bo98 Bo98 deleted the free-signalling branch September 12, 2024 03:25
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

Successfully merging this pull request may close these issues.

1 participant