Skip to content

Conversation

@brian-oneill
Copy link

This PR allows Omega to properly run on meshes with boundary edges.

Updates the initialization of the HorzMesh member array EdgeMask to set values on boundary edges equal to 0, and adds EdgeMask to tendency terms and auxiliary variables to nullify computations on boundary edges. Some of these changes will likely be temporary, to be replaced by setting KMin and KMax ranges to skip over computations on boundary edges similar to how many boundaries are handled in MPAS.

Ran ctest successfully on pm-cpu (intel), pm-gpu (gnu), frontier cpu (craycray), and frontier gpu (craycray-mphipcc). Changes introduced in this PR produced successful results for the barotropic gyre and global wind-forced tests in the comments of #219

Checklist

  • Testing
    • Unit tests have passed. Please provide a relevant CDash build entry for verification.

ambrad and others added 30 commits March 26, 2025 19:01
... to 1fde6df29e11bc2508535293f3c4c8203c9cb347

Fixes:
1) Fix ERR test for E3SM

Changes:
1) Create env_postprocessing.xml in case root
2) make compset names case insensitive but retain user prefered case
3) safe_copy: Use /bin/cp as last resort
4) update python minimum to 3.8 and update cprnc module.
5) Adds --compiler argument to query_config
6) Allow blessing if test only failed GENERATE

[BFB]
… (PR E3SM-Project#7168)

Ideally we have nested parallelism in these pre/post process kernels. Chatting with @ndkeen,
there's potential for a decent perf improvement (update with timings later) as pre/post process
could be up to 50% of total P3 run time.
    
[BFB]
If all processes register a tracer with "NoPreference", the tracer will be both dynamics and shoc advected.

Also, moves tracer consistency check to AtmosphereProcessGroup.

[BFB]
This way, we can parse the generated log in unit tests,
to ensure the expected hashes are generated
Avoid clashes when runnint npX in parallel
- Ensure decomp offsets type *is* PIO_Offset
- Use PIMPL to avoid including pio.h in header
Avoid using shared_ptr for a dim offset, checking if it's null to
determine if the dim is decomposed. Instead, simply store a bool flag
Updates:
- default to gpu builds with oneapi-ifxgpu
- default to MPI-on-device with MPIR_CVAR_ENABLE_GPU=1 in GPU runs
    and MPI-on-host with MPIR_CVAR_ENABLE_GPU=0 in CPU runs
Remove duplicates, invalid flags and fix bld errors
Chrysalis is a threaded testing platform and there were three
processes that needed thread syncing in order to produce
consistant results.

There are fixes in both eamxx and mam4xx and changes to the
mam4xx interface require both to be updated.
Merge branch 'bartgol/eamxx/io-decomp-upgrade' into next (PR E3SM-Project#7175)

Main change: allow our IO layer to output decomposed variables
where the decomposition is not on the slowest-striding dimension.

Minor changes:

- use structured binding in eamxx_scorpio_interface.cpp
- remove implicit assumption that PIO_Offset is 64 bit:
  it probably always will be, but no need to hard code assumptions.
- be more clear/explicit when marking a dim as decomposed:
  use a bool to mark it as such, rather than relying on whether
  the shared ptr of the offsets is null or not...

[BFB]
…ode' (PR E3SM-Project#7173)

If all processes register a tracer with "NoPreference", the tracer will be
both dynamics and shoc advected.
    
Also, moves tracer consistency check to AtmosphereProcessGroup.
    
[BFB]
mwarusz and others added 27 commits May 15, 2025 12:51
…is-version-docs

Update Polaris version and fix dependencies

In this PR I updated the polaris version listed in the docs from 0.7.0 to 0.8.0.

I also fixed an issue where the omega dependencies incorrectly listed sphinx-multiversion despite it not being used for the documentation.
Modifies error behavior for Omega Config and downstream dependencies
We want to allow pages to start with H2
Now that there are currently no warnings, let's make any
future warnings result in errors in PRs.
…to-docs

Clean up the Docs and add Aurora

This merge includes :
* adding Aurora to list of parmetis paths
* a fix and some clean-up to the EOS design doc
* suppressing a warning about pages starting with H2 headers that we are fine with
* make warnings in the docs now trigger errors in CI (since all warnings are now gone!)
…nd-bottom-drag

Add wind forcing and bottom drag tendency terms
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

Successfully merging this pull request may close these issues.