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

par_for defaults #1034

Open
pgrete opened this issue Mar 26, 2024 · 2 comments
Open

par_for defaults #1034

pgrete opened this issue Mar 26, 2024 · 2 comments
Labels
discussion enhancement New feature or request refactor An improvement to existing code.

Comments

@pgrete
Copy link
Collaborator

pgrete commented Mar 26, 2024

          Actually a broader conversation... which maybe I should start and/or just implement, is the `par_for`s that aren't tied to meshblock shouldn't need to take in an exec space. We should provide overloads that accept default arguments. (Not your problem for this MR though.)

Originally posted by @Yurlungur in #1024 (comment)

@pgrete pgrete added enhancement New feature or request refactor An improvement to existing code. discussion labels Mar 26, 2024
@pgrete
Copy link
Collaborator Author

pgrete commented Mar 26, 2024

I'd even go as far as suggesting to remove the pmb->par_for entirely and replace it with a md->par_for (in addition to the default one).
My main motivation is that the original idea behind the pmb version was to be able to dispatch to different streams in parallel.
Given what we learned over the past years, I don't see us going back to the individual block level, but remain at the MeshData level and thus moving the pmb->par_for upwards in the hierarchy.

@pgrete
Copy link
Collaborator Author

pgrete commented Mar 28, 2024

From the sync https://github.com/parthenon-hpc-lab/parthenon/wiki/2024.03.28-Meeting-Notes

  • Generic functionality is preferable (as it causes less confusion)
  • For now, add shortened global interface
  • Eventually deprecate the pmb->par_for
  • Potentially introduce a md version (again as generic function that takes an md object) in the future

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion enhancement New feature or request refactor An improvement to existing code.
Projects
None yet
Development

No branches or pull requests

1 participant