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 halo > 0 support for ORCA meshes #19

Open
twsearle opened this issue Jun 11, 2024 · 2 comments
Open

Add halo > 0 support for ORCA meshes #19

twsearle opened this issue Jun 11, 2024 · 2 comments
Labels
enhancement New feature or request

Comments

@twsearle
Copy link
Contributor

twsearle commented Jun 11, 2024

Is your feature request related to a problem? Please describe.

Orca meshes do not currently support MPI halos. I would like to add this support to resolve an issue in OOPS and to support more complex operations on domain decomposed orca fields in the future.

This would solve an issue caused by the OOPS observation partitioning scheme, which uses the nearest node locations to identify the owning MPI process for an observation. The atlas interpolation schemes need the cell containing the observation in order to interpolate the model data to the location. On the edge of an MPI process with halo =0, this can lead to observations on a processor but outside of the mesh.

OOPS issue solution options

  • Improve the OOPS observation partitioning algorithm
    • solves the issue at the source
    • hard to write a performant solution that works in general for atlas and other grids supported by oops
    • large project with a lot of dependent projects - any change will be difficult to make
  • Add halo = 1 support to orca meshes (this proposal)
    • adds functionality we would want anyway
    • solves the problem in a robust and correct way

Describe the solution you'd like

Refactor the mesh generator to allow for setting a halo > 0 at mesh generation time. This involves quite a number or ordered/connected changes across various repositories. We have a proposed solution, but it requires the following:

  1. Fix to bug in interpolation - Wrap out-of-bounds source cells into the domain atlas#211
  2. Update to latest version of atlas in our builds (internal Met Office work including resolving failures at atlas 0.38.0 MetOffice/orca-jedi#98)
  3. Internal Met Office changes to use halo > 0 settings (merged) - https://github.com/MetOffice/jjdocs/pull/167
  4. atlas-orca meshgenerator changes to support halo > 0 including test coverage and sufficient performance changes - Refactor to allow halo > 0 decomposition of the mesh #20
  5. tagged release of atlas-orca

Coordinated Changes

Organisation

UK Met Office

@matthewrmshin
Copy link
Contributor

@twsearle Can close this?

@twsearle
Copy link
Contributor Author

twsearle commented Sep 4, 2024

@matthewrmshin perhaps wait until @wdeconinck is happy to give us a new tagged release? Just in case he deploys develop somewhere and bad things happen his end? I know I have tested this change in our stack and it was fine.

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

No branches or pull requests

2 participants