[develop] Source task specific portions of var_defns.sh file in ex- and j-job s…#465
Conversation
913de18 to
1692184
Compare
1692184 to
c0d6ee1
Compare
|
Machine: hera |
|
Machine: jet |
MichaelLueken
left a comment
There was a problem hiding this comment.
@danielabdi-noaa These changes look good to me! Moved SYMLINK_FIX_FILES from task_run_fcst: to workflow: in config_defaults.yaml, nice!
I manually tested your changes on Cheyenne. All of the Intel tests successfully passed.
However, only a single test passed - grid_CONUS_25km_GFDLgrid_ics_FV3GFS_lbcs_FV3GFS_suite_GFS_v16, for GNU tests. The rest failed in make_grid with the following error message:
At line 65 of file /glade/scratch/mlueken/ufs-srweather-app/sorc/UFS_UTILS/sorc/grid_tools.fd/regional_esg_grid.fd/regional_esg_grid.f90 (unit = 10, file = '/glade/scratch/mlueken/expt_dirs/grid_RRFS_CONUS_25km_ics_FV3GFS_lbcs_FV3GFS_suite_HRRR/grid/tmp/regional_grid.nml')
Fortran runtime error: Cannot match namelist object name .0
Have you encountered this with your testing? My experiment directories on Cheyenne for GNU are /glade/scratch/mlueken/expt_dirs.
|
@MichaelLueken Thanks for testing! So far I have only run it on Hera and Jet. Unfortunately I do not have access to Cheyenne but it is indeed odd that the Intel tests passed but not the GNU ones. I will re-run the cheynne GNU tests on other systems and see if it can be reproduced. |
cadbc21 to
f89f648
Compare
The NOMADS test case works for current date - 7.
14f4b1f to
cbf822e
Compare
59500c7 to
ce4330c
Compare
|
@danielabdi-noaa I was able to run the GNU tests on Cheyenne using the Intel executables. All of the tests successfully passed. To double check, I cloned the authoritative repo, built it using GNU and submitted the fundamental tests. All tests successfully passed. I created a new GNU modulefile on Hera. It can be found:
I'm finding the same behavior that I was on Cheyenne with GNU compilers: Please feel free to compile using the GNU modulefile on Hera to see if you can tell what might be happening with the GNU executables. Also, I've been encountering the following error while attempting to run the WE2E tests since hash ce4330c: Are you also encountering these failures? |
|
@MichaelLueken Thanks a lot for testing. I will try to compile on Hera with GNU and try to debug it. I also did run the cheyenne GNU tests on hera/jet and found no problem. Btw you may want to add the GNU modulefiles for Hera since it could be useful in the future for those of us who don't have access to cheyenne. I will fix the PDYm1 issue. Thanks! |
|
@MichaelLueken I am able to reproduce the problem on Hera with GNU so I should be able to figure out the problem. |
|
@MichaelLueken The bug is fixed and I was able to run the cheyenne gnu tests on Hera with a gnu build to completion. The problem was instead of In the code I assumed that |
3de3627 to
4580fec
Compare
4580fec to
7211af4
Compare
MichaelLueken
left a comment
There was a problem hiding this comment.
@danielabdi-noaa I was able to run the GNU tests on Cheyenne and they successfully ran. I will go ahead and give my approval to your changes and submit the Jenkins CI tests at this time (the Jet tests will launch once Jet has been returned to service).
christinaholtNOAA
left a comment
There was a problem hiding this comment.
Very nice additions here, @danielabdi-noaa !!
| # Set NCO mode OPSROOT | ||
| # | ||
| OPSROOT=\"${OPSROOT}\"" | ||
| OPSROOT=\"${opsroot}\"" |
There was a problem hiding this comment.
How does OPSROOT get set now?
There was a problem hiding this comment.
Both expt_basedir and OPSROOT have default values specified in setup.py so that they work in the case where we use generate_FV3LAM_wflow.py directly. Just wanted to be consistent with expt_basedir
| DATE_LAST_CYCL: '2020082600' | ||
| PREDEF_GRID_NAME: RRFS_CONUS_25km | ||
| DATE_FIRST_CYCL: date --utc --date="2 days ago" +%Y%m%d00 | ||
| DATE_LAST_CYCL: date --utc --date="2 days ago" +%Y%m%d00 |
There was a problem hiding this comment.
I originally wanted to handle this in the python-workflow but it ended up to be unnecessarily complicated so left it to WE2E scripts as a temporary solution. I think once the run_WE2E scripts are converted to python, templating the WE2E config files themselves with jinja2 may have some benefits.
There was a problem hiding this comment.
I am working on that solution now!! (Templating with jinja2 in the config files)
DESCRIPTION OF CHANGES:
Adds capability to source task specific sections of
var_defns.shfile in ex-scripts and j-jobs. Each task sources a subset of the variables invar_defns.sh, one or moretask_*sections, along with common variables defined in non-task specific sections such asworkflow:orglobal. This enables for example defining the same variable name e.g.NNODES, instead ofNNODES_FOR_FCST,NNODES_FOR_POSTetc.Most of the tasks require definitions only in their own sections
Some like the
make_orogtask use variables frommake_gridas well (usually previous task)Additional changes:
Complete set of task modulefiles for tier-1 platforms, and python-3 loading on all systems just to be safe. This PR requires python3 for all tasks.
Rearrange config entries, rename some such as
TOPO_DIR->FIXorgandSFC_CLIMO_INPUT_DIR->FIXsfcmachine files now contain entirely of
platform:sectionRemoves unused
NOMADSscript and logic and rely onretrieve_data.py's nomads supportOption to set current date as
DATE_FIRST/LAST_CYCLusingdateutil. This is useful, for example, for the NOMADS test case which only has data for the last 7 or so daysForward arguments from
setup_WE2E_tests.shtorun_WE2E_tests.sh. This makes things like the following possible whichbefore this PR are not possible. It basically makes
setup_WE2Escript a convenience wrapper.Setup we2e run with debug/verbose turned off (by default it is on)
./setup_WE2E_tests.sh hera zrtrr intel custom debug=FALSE verbose=FALSESetup we2e run without using cron (i.e. just generate the directories)
./setup_WE2E_tests.sh hera zrtrr intel custom use_cron_to_relaunch=FALSESetup we2e run using exes from some directory
./setup_WE2E_tests.sh hera zrtrr intel custom exec_subdir=old_install/execetc
Type of change
TESTS CONDUCTED:
DEPENDENCIES:
DOCUMENTATION:
ISSUE:
CHECKLIST
LABELS (optional):
A Code Manager needs to add the following labels to this PR:
CONTRIBUTORS (optional):
@christinaholtNOAA