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
WIP: Fix throttle test #2994
WIP: Fix throttle test #2994
Conversation
…erminated function
One version takes the thread number and the other cleans up in all worker threads.
@sithhell would you have the time to look at this? |
@msimberg thanks for your work on this! |
Add HPX_EXPORT to hopefully fix msvc build errors.
@sithhell @hkaiser A few things that could be taken care of in separate PRs (if considered useful):
|
After testing this branch, I found several issues, which are solvable with the attached patch |
@sithhell please create a PR against this branch for your patch. |
Update: What @sithhell found was that some tests were failing due to my changes making the scheduling loop termination criteria too relaxed (e.g. |
Could you explain please why relaxing the exit criteria for the scheduler is necessary in order to 'fix' the throttling problem? |
@hkaiser it has to do with stealing. The particular case I was seeing is:
I imagine this would happen in more general cases as well. Essentially the scheduling loop waits for work that will never be scheduled on that particular pu (unless it steals it back, which it won't do when stopping). However, as shown by the failing tests this is not a good solution. |
Closing as #3046 replaces it. |
This addresses #2955 by unreverting #2962 and fixing some additional lockups.
Still to do:
This is in progress, but opening already for comments and to check tests.