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

Use contiguous index queue in bulk execution to reduce number of spawned tasks #5503

Closed
msimberg opened this issue Aug 10, 2021 · 2 comments
Closed

Comments

@msimberg
Copy link
Contributor

The fork-join executor uses contiguous_index_queue as a lightweight queue for work stealing between the worker threads working on items in the current bulk parallel region. We could use the queue also in execution::bulk for thread_pool_scheduler and parallel_executor. This allows work stealing to still happen but removes the need for "hierarchical scheduling" since only one task per worker thread is needed.

@msimberg
Copy link
Contributor Author

msimberg commented Dec 2, 2021

This is now in use in thread_pool_scheduler (#5531).

@hkaiser hkaiser added this to the 1.8.0 milestone Mar 11, 2022
@hkaiser
Copy link
Member

hkaiser commented Mar 11, 2022

I think we can close this as #5531 provides a means of using the index queue as needed.

@hkaiser hkaiser closed this as completed Mar 11, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants