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 ability to specify explicit CPU bindings #46

Closed
ronawho opened this issue Dec 1, 2016 · 3 comments
Closed

Add ability to specify explicit CPU bindings #46

ronawho opened this issue Dec 1, 2016 · 3 comments

Comments

@ronawho
Copy link
Contributor

ronawho commented Dec 1, 2016

This may be mostly finished with the "binders" work that @stelleg did, but we haven't gotten a chance to try binders out yet. This is mostly a placeholder issue to capture the gist of what we wanted as it may be helpful to anyone doing future development on binders. It'll probably also serve as a place to report bugs that we may run into as we start using binders.

The general idea is that instead of letting qthreads decide affinity, we want the ability to explicitly specify how shepherds/workers should bind to specific numa domains/CPUs. Something like OpenMP's OMP_PLACES or gomps GOMP_CPU_AFFINITY

We need this because parts of the Chapel runtime also have to reason about topology/affinity, and we need our runtime and qthreads to have the same "view" of the machine. For example with certain communication layers our runtime may pin memory to specific NUMA domains and we need to be sure our runtime and qthreads both agree on which socket is NUMA domain 0 and things like that.

This is a high priority item for us, although I don't think there's anything for the qthreads team to do until we've gotten a chance to try out the binders work.

@ronawho ronawho mentioned this issue Dec 1, 2016
14 tasks
@npe9 npe9 self-assigned this Dec 2, 2016
@npe9
Copy link
Contributor

npe9 commented Dec 2, 2016

Gotcha, if I can help with anything here, feel free to ping me.

@npe9
Copy link
Contributor

npe9 commented Jun 13, 2017

@ronawho Have you tried out the binders stuff yet?

@ronawho
Copy link
Contributor Author

ronawho commented Sep 6, 2023

We switched to binders by default in chapel-lang/chapel#20901 and that has been working well for us

@ronawho ronawho closed this as completed Sep 6, 2023
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