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

support rank-based OMP places with "vanilla" OpenMP #5

Open
naughtont3 opened this issue Jan 12, 2018 · 3 comments
Open

support rank-based OMP places with "vanilla" OpenMP #5

naughtont3 opened this issue Jan 12, 2018 · 3 comments
Assignees

Comments

@naughtont3
Copy link

Add support to MOC to use generic (unmodified) OpenMP runtime, but define the OMP_PLACES value as a function of the MPI ranks (i.e., OMPI_PLACES defined in MOC_Init() before OpenMP initialized).

This should be enabled/disabled at compile time to avoid any unexpected interactions when using a modified OMP runtime (e.g., libomp).

NOTE: Focus on OpenMP threads (places) on "cores" use case first. Also, avoid NUMA case at first because we do not have hwloc/fine-grained info.

Target use cases (in order of interest/priority):

  • 1.a) 1 rank per physical node -> OpenMP threads (places) on cores
  • 2.a) 1 rank per core -> OpenMP threads (places) on cores
  • 3.a) 1 rank per NUMA node -> OpenMP threads (places) on cores
  • 1.b) 1 rank per physical node -> OpenMP threads (places) on hwthreads
  • 2.b) 1 rank per core -> OpenMP threads (places) on hwthreads
  • 3.b) 1 rank per NUMA node -> OpenMP threads (places) on hwthreads
  • 4.x) Future - 1 rank per GPU -> OpenMP threads (places) ???
@naughtont3
Copy link
Author

naughtont3 commented Jan 12, 2018

Added code for defining places in MOC_Init(). Need to revise to have proper syntax for OMP_PLACES definition. Currently get OpenMP error msg like: OMP: Warning #123: Ignoring invalid OS proc ID 11.

Will create WIP PR when that is fixed to keep things linked to this ticket, https://github.com/naughtont3/MOC/tree/tjn-myrank-place-vanilla

@gvallee
Copy link
Contributor

gvallee commented Jan 19, 2018

Here are the cases to support, let's keep this issue for overall tracking, I will open individual issues for all these cases.

20180111171506622.pdf

@gvallee gvallee assigned gvallee and unassigned naughtont3 Jan 19, 2018
@naughtont3
Copy link
Author

Returning to this and did not see the invalid error msg I mentioned above. Successful test was on my Linux desktop. I'll have to try on another machine that has more cores.

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

No branches or pull requests

2 participants