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

Hybrid coordinate enhancements 3 #316

Merged
merged 4 commits into from
Dec 1, 2023

Conversation

matsbn
Copy link
Contributor

@matsbn matsbn commented Dec 1, 2023

Hybrid coordinate enhancements that includes:

  • Modified the transition between isopycnic and constant pressure interfaces to make it less sensitive to bathymetry variations.
  • Modified the estimation of neutral slope vector times Brunt-Vaisala frequency in the vicinity of bathymetry to make Eady growth rate estimates more robust.
  • Moved BLOM_VCOORD from run_component_blom to build_component_blom group (BLOM_VCOORD is needed for building since it defines the number of vertical layers used).

Model results change when using hybrid coordinate, but are unchanged with isopycnic coordinate.

…faces for hybrid vertical coordinate to make it less sensitive to bathymetry variations.
…ope vector times Brunt-Vaisala frequency in the vicinity of bathymetry to make Eady growth rate estimates more robust.
@@ -65,8 +65,8 @@
<type>char</type>
<valid_values>isopyc_bulkml,cntiso_hybrid</valid_values>
<default_value>isopyc_bulkml</default_value>
<group>run_component_blom</group>
<file>env_run.xml</file>
<group>build_component_blom</group>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for fixing this.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we do any tests that verify that OMP works - such as that changing the number of threads gives bfb results?
I have run into some perplexing differences when I ran an MPI case with threads = 1 and with threads = 2.
I need to do some more testing before raising an issue. But I'm wondering what tests are done to verify the functionality of OMP threading?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this mean that hybrid coordinates would not work in release v.1.4.0?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It should work - my comment is only that the xml variable BLOM_VCOORD should be in env_build.xml and not in env_run.xml - since it sets dimensions.
That said - I really think we need to expand the test list to include hybrid coordinates and more testing of OMP and MPI tasks variations.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hybrid coordinates worked in v1.4.0 by modifying BLOM_VCOORD in env_run.xml, but you would have to remember to do it before building.

@mvertens
Copy link
Contributor

mvertens commented Dec 1, 2023

Good news - I have run a test which successfully passed and checks bfb across different thread counts:
PET_Ld3.T62_tn14.NOINY.betzy_intel
The test verifies that running with 2 threads versus 1 thread gives bfb results for both the coupler history file and the blom history file
PET_Ld3.T62_tn14.NOINY.betzy_intel.v1401.blom.hd.0001-01-03.nc
I should verify the same with ihammoc.

@TomasTorsvik
Copy link
Contributor

All CI tests with intel compiler fails, but don't see anything in this PR that should cause this change. The macos-latest fails at run time, but this seems to b failing also on current master. Probably we need to spend some time fixing CI, but I don't think it's specific to this PR.

@mvertens
Copy link
Contributor

mvertens commented Dec 1, 2023

Also the PET test PET_Ld3.T62_tn14.NOINYOC.betzy_intel.blom-hamocc1 passes.

@mvertens
Copy link
Contributor

mvertens commented Dec 1, 2023

Note - that I did these tests with dev1.4.0.1 and not this PR.

@matsbn
Copy link
Contributor Author

matsbn commented Dec 1, 2023

All CI tests with intel compiler fails, but don't see anything in this PR that should cause this change. The macos-latest fails at run time, but this seems to b failing also on current master. Probably we need to spend some time fixing CI, but I don't think it's specific to this PR.

I also saw the failed CI tests. Many of the tests failed with "configure: error: Fortran could not compile .f90 files". It seems unlikely that this PR is causing this and that the issue is on the CI system.

@mvertens
Copy link
Contributor

mvertens commented Dec 1, 2023

I had the exact same CI failures in my BLOM refactor pushes to my fork. So its definitely not this PR.

@matsbn matsbn merged commit f5dd74d into NorESMhub:master Dec 1, 2023
5 of 12 checks passed
@mvertens
Copy link
Contributor

mvertens commented Dec 1, 2023

Who will be making the v1.5.0 tag? That would be really helpful to have as soon as possible.

@TomasTorsvik
Copy link
Contributor

I can make a draft release.

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.

4 participants