Parallelize surface increment regridding#1109
Conversation
|
@DavidNew-NOAA could you also make corresponding changes in https://github.com/DavidNew-NOAA/UFS_UTILS/blob/feature/multi_regrid/tests/regrid_sfc/data/regrid.nml to match ? |
Just posting FYI. Here is the unit test failure: |
|
The following is from running the driver script for the regrid_sfc reg-tests: |
|
Thanks @BrianCurtis-NOAA . I will work on getting that unit test fixed |
|
Hi @BrianCurtis-NOAA I think I made the necessary change to the unit test namelist |
Still not working. Neither are my regression tests. |
|
Thanks @BrianCurtis-NOAA . Are these regression tests easy to run? Can you provide instructions to get me started? I really need to play around with this myself to get a handle on what's going wrong. |
cd reg-tests/regrid_sfc |
|
@BrianCurtis-NOAA Awesome, thanks. I'll take a look this afternoon |
|
@BrianCurtis-NOAA I'm running into the following error upon running driver.sh. Is there an obvious solution to this?: |
It's got to do with the build/linking for that executable. There could be many ways it's broken. I would try building again with intelllvm using the build_all.sh script, maybe try removing the build dir for a fresh build from src. If it still persists, try checking what you have loaded in lua on a fresh terminal session to see if it's getting in the way of what's shown in modulefiles/build.<machine>.<compiler>.lua |
|
@BrianCurtis-NOAA Dumb mistake on my part. I built Global Workflow on Hera and was trying to run reg tests on Ursa because driver.sh didn't have settings for Hera. I rebuilt on Ursa and it works now |
Been there, done that. 👍 |
|
@BrianCurtis-NOAA That last commit did the trick |
Reg tests ran successfully! One last thing, in tests/regrid_sfc/ftst_read_namelist.F90 can you edit it (for both grid_setup_in and grid_setup_out) to match your changes to the nml. |
|
@BrianCurtis-NOAA It looks like |
OK, I see. Maybe it's with the readin_setup.F90 in sorc/regrid_sfc.fd, the unit test errors out with "unknown namel in readin_setup" (line 69) . There's something in there that got messed up with the nml changes, possibly. |
I think i see it. In the ftest, the function call for readin_setup has added variables which are not present in the test. |
|
Ok, will take a look shortly |
|
@BrianCurtis-NOAA Is the unit test different from the regression test? How do you run the unit test? |
it is, yes. This should run all unit test, they go quick and all but the last one should pass. |
|
@BrianCurtis-NOAA CTest fixed |
|
Thanks for your help @BrianCurtis-NOAA. Do you have any other concerns with this PR? FYI we are going to include this PR in the GFSv17 retrospectives, which will be starting as soon as possible. |
No other concerns. I'll get to merge testing ASAP (in between meetings today, probably). |
|
Thanks @BrianCurtis-NOAA |
|
BrianCurtis-NOAA
left a comment
There was a problem hiding this comment.
Found all the rest of the places where you'll need to document the new inputs to functions.
|
still missing edit to line #254. |
|
and sorc/regrid_sfc.fd/readin_setup.F90 line 12 |
|
Thanks @BrianCurtis-NOAA and @DavidNew-NOAA! |
|
Thanks @BrianCurtis-NOAA ! It's been a useful education on how to do PRs for ufs_utils (reg tests, unit tests, etc) |
DESCRIPTION OF CHANGES:
This PR, a companion to NOAA-EMC/global-workflow#4193, parallelizes the surface increment regridding code over multiple ensemble members. Now, one can specify the number of ensemble members and specify multiple input directories (one for each ensemble member) in the namelist.
TESTS CONDUCTED:
If there are changes to the build or source code, the tests below must be conducted. Contact a repository manager if you need assistance.
Optional test.
Describe any additional tests performed.
DEPENDENCIES:
DOCUMENTATION:
All new and updated source code must be documented with Doxygen.