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

Workaround for transient Smallville tests #1673 + testing all new datasets #2318

Merged
merged 56 commits into from
Feb 16, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
f9e0291
Add modify_smallville.sh for generating landuse.timeseries...smallville
slevis-lmwg Jan 12, 2024
79e6ab8
Update references to smallville fsurdat/landuse files; remove .ncl file
slevis-lmwg Jan 13, 2024
1b6ac0e
Update mksurfdata_esmf/Makefile to work with modify_smallville.sh
slevis-lmwg Jan 13, 2024
0739abc
Rm fsurdat from two user_nl_clm files because default should suffice
slevis-lmwg Jan 16, 2024
ba75743
Bug-fix of a typo unrelated to this PR that just needs to get in
slevis-lmwg Jan 16, 2024
38e6645
Make error msg more helpful when PCT_OCEAN not present
slevis-lmwg Jan 16, 2024
4deab5b
Updates to the Makefile (not tested, yet)
slevis-lmwg Jan 19, 2024
730e976
Revisions from code review with Erik
slevis-lmwg Jan 19, 2024
2bfad30
Updates for "make all-subset" to complete successfully
slevis-lmwg Jan 23, 2024
6988570
Merge remote-tracking branch 'escomp/ctsm5.2.mksurfdata' into smallvi…
slevis-lmwg Jan 24, 2024
4be83a7
Add potveg to the list of files created
slevis-lmwg Jan 25, 2024
83fb3ba
Updates for generating all necessary fsurdat/landuse files
slevis-lmwg Jan 25, 2024
5638af2
Renamed an fsurdat according to a pending TODO
slevis-lmwg Jan 25, 2024
78a533c
One-line addition to ...jobscript_multi.py
slevis-lmwg Jan 25, 2024
9a14039
Updates for --vic option
slevis-lmwg Jan 26, 2024
342ca02
Mods suggested by @fang-bowen that fix the mksurdata_esmf build step
slevis-lmwg Jan 26, 2024
049ee01
Updates to the MKSURFDATAESMF test
slevis-lmwg Jan 26, 2024
159a977
Updates for mksurfdata_esmf to work as advertised
slevis-lmwg Jan 26, 2024
7bb22e1
Update number-of-nodes requested by the Makefile
slevis-lmwg Jan 26, 2024
085be20
Mods towards getting the Makefile to work (after first attempt)
slevis-lmwg Jan 26, 2024
db2820c
Mods towards getting the Makefile to work (after 2nd attempt)
slevis-lmwg Jan 26, 2024
fdff5d6
Mods towards getting the Makefile to work (2b)
slevis-lmwg Jan 26, 2024
f3cc3d5
Mods towards getting the Makefile to work (after 3rd attempt)
slevis-lmwg Jan 26, 2024
726531e
Mods towards getting the Makefile to work (after 4th attempt)
slevis-lmwg Jan 27, 2024
5a64daf
Mods towards getting the Makefile to work (after 5th attempt)
slevis-lmwg Jan 27, 2024
f56473b
Mods towards getting the Makefile to work (after 6th attempt)
slevis-lmwg Jan 27, 2024
abea471
Updates to help generate all fsurdat/landuse files without crashes
slevis-lmwg Jan 30, 2024
45e80c7
Updates to generate fsurdat/landuse files faster
slevis-lmwg Jan 30, 2024
e7e788f
Fix latest failure
slevis-lmwg Jan 31, 2024
60ab6d3
Updates to get missing files generated
slevis-lmwg Feb 1, 2024
2a7d6f9
Accounting for fsurdat/landuse filename changes throughout
slevis-lmwg Feb 2, 2024
137ac05
Correct the automated naming of landuse/fsurdat files
slevis-lmwg Feb 2, 2024
741900c
Updates from review with Erik
slevis-lmwg Feb 2, 2024
859f4e0
Updated namelist_defaults_ctsm.xml
slevis-lmwg Feb 2, 2024
c0b4782
Second pass at namelist_defaults_ctsm.xml
slevis-lmwg Feb 3, 2024
b7b433e
Update build-namelist_test.pl based on new available datasets
slevis-lmwg Feb 3, 2024
831c1aa
Update time stamp of several 1x1 files in namelist_defaults_ctsm.xml
slevis-lmwg Feb 4, 2024
365ac27
Make convert_ocean_to_land = .true. the default and improve error msg
slevis-lmwg Feb 4, 2024
6ea25a7
Update testlist with tests needed in ctsm_sci test-suite
slevis-lmwg Feb 5, 2024
e5617d0
Changes toward getting the MKSURFDATAESMF test to work
slevis-lmwg Feb 5, 2024
c5786a3
Remove ctsm_sci tests that run with clm45
slevis-lmwg Feb 5, 2024
4e1098b
Correction that I hope will fix this test failure
slevis-lmwg Feb 5, 2024
6e07229
Corrections based on ctsm_sci failures
slevis-lmwg Feb 5, 2024
73fd801
Corrections to testlist_clm.xml for izumi aux_clm suite
slevis-lmwg Feb 6, 2024
e196a1e
Correction to the previous commit's compsets
slevis-lmwg Feb 6, 2024
c40bacd
Updates to modify_singlept_site_neon.py to generate 5.2 fsurdat files
slevis-lmwg Feb 7, 2024
7d4a5d8
Updates to NEON fsurdat file names in namelist_defaults and elsewhere
slevis-lmwg Feb 7, 2024
d803f62
Path corrections for NEON aux_clm tests to pass on izumi
slevis-lmwg Feb 7, 2024
cb3a627
Update namelist_defaults for clm51cam6LndTuningMode tests to proceed
slevis-lmwg Feb 9, 2024
6fc655d
Remove USUMB test and testmods as obsolete
slevis-lmwg Feb 9, 2024
1692b65
Correct references to mpasa15-3 grid and fix RXCROPMATURITY test
slevis-lmwg Feb 9, 2024
22bebe7
Change two intel tests to gnu to get around issue 130...
slevis-lmwg Feb 9, 2024
34012d3
PE layout that worked for hcru & remove ssp4 test
slevis-lmwg Feb 10, 2024
b72fc24
Use P36x128 for the two mpasa15 grids
slevis-lmwg Feb 12, 2024
1f4611f
Adding SMS_Ld12_Mmpi-serial.1x1_urbanc_alpha... to the expected fails
slevis-lmwg Feb 13, 2024
494ad7c
Updating expected failures (+ adding an unrelated comment)
slevis-lmwg Feb 15, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
294 changes: 117 additions & 177 deletions bld/namelist_files/namelist_defaults_ctsm.xml

Large diffs are not rendered by default.

31 changes: 24 additions & 7 deletions bld/unit_testers/build-namelist_test.pl
Original file line number Diff line number Diff line change
Expand Up @@ -163,10 +163,10 @@ sub cat_and_create_namelistinfile {
#
# Figure out number of tests that will run
#
my $ntests = 2815;
my $ntests = 2587;

if ( defined($opts{'compare'}) ) {
$ntests += 1965;
$ntests += 1737;
}
plan( tests=>$ntests );

Expand Down Expand Up @@ -433,7 +433,7 @@ sub cat_and_create_namelistinfile {
"-res ne0np4CONUS.ne30x8 -bgc sp -use_case 2000_control -namelist '&a start_ymd=20130101/' -lnd_tuning_mode ${phys}_cam6.0",
"-res 1.9x2.5 -bgc sp -use_case 20thC_transient -namelist '&a start_ymd=20030101/' -lnd_tuning_mode ${phys}_cam6.0",
"-res 1.9x2.5 -bgc sp -use_case 2010_control -namelist '&a start_ymd=20100101/' -lnd_tuning_mode ${phys}_cam6.0",
"-res 1x1_brazil -bgc fates -no-megan -use_case 2000_control -lnd_tuning_mode ${phys}_CRUv7",
"-res 1x1_brazil -no-megan -use_case 2000_control -lnd_tuning_mode ${phys}_CRUv7",
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Explaining the mods in this file:

  • 1x1_brazil is not among the 16-pft files

"-res C96 -bgc sp -use_case 2010_control -namelist '&a start_ymd=20100101/' -lnd_tuning_mode ${phys}_cam6.0",
"-res ne0np4.ARCTIC.ne30x4 -bgc sp -use_case 2000_control -namelist '&a start_ymd=20130101/' -lnd_tuning_mode ${phys}_cam6.0",
) {
Expand Down Expand Up @@ -1350,8 +1350,8 @@ sub cat_and_create_namelistinfile {
print "========================================================================\n";

# Check for ALL resolutions with CLM50SP
my @resolutions = ( "1x1_brazil", "1x1_mexicocityMEX", "1x1_vancouverCAN", "1x1_urbanc_alpha", "5x5_amazon", "360x720cru", "0.125nldas2", "10x15", "4x5", "0.9x1.25", "1.9x2.5", "ne3np4.pg3", "ne16np4.pg3", "ne30np4", "ne30np4.pg2", "ne30np4.pg3", "ne120np4.pg3", "ne0np4CONUS.ne30x8", "ne0np4.ARCTIC.ne30x4", "ne0np4.ARCTICGRIS.ne30x8", "C96", "mpasa480", "mpasa120", "mpasa60", "mpasa15", "mpasa15-conus", "mpasa3p75" );
my @only2000_resolutions = ( "1x1_brazil", "1x1_mexicocityMEX", "1x1_vancouverCAN", "1x1_urbanc_alpha", "5x5_amazon", "0.125nldas2", "mpasa60", "mpasa15", "mpasa15-conus", "mpasa3p75" );
my @resolutions = ( "360x720cru", "10x15", "4x5", "0.9x1.25", "1.9x2.5", "ne3np4.pg3", "ne16np4.pg3", "ne30np4", "ne30np4.pg2", "ne30np4.pg3", "ne120np4.pg3", "ne0np4CONUS.ne30x8", "ne0np4.ARCTIC.ne30x4", "ne0np4.ARCTICGRIS.ne30x8", "C96", "mpasa480", "mpasa120" );
my @only2000_resolutions = ( "1x1_numaIA", "1x1_brazil", "1x1_mexicocityMEX", "1x1_vancouverCAN", "1x1_urbanc_alpha", "5x5_amazon", "0.125nldas2", "mpasa60", "mpasa15", "mpasa15-3", "mpasa3p75" );
my @regional;
foreach my $res ( @resolutions ) {
chomp($res);
Expand Down Expand Up @@ -1449,7 +1449,24 @@ sub cat_and_create_namelistinfile {
print "==================================================\n";

# Check for crop resolutions
my @crop_res = ( "1x1_numaIA", "1x1_smallvilleIA", "4x5", "10x15", "0.9x1.25", "1.9x2.5", "ne3np4.pg3", "ne30np4", "ne30np4.pg3", "C96", "mpasa120" );
my $crop1850_res = "1x1_smallvilleIA";
$options = "-bgc bgc -crop -res $crop1850_res -use_case 1850_control -envxml_dir .";
&make_env_run();
eval{ system( "$bldnml $options > $tempfile 2>&1 " ); };
is( $@, '', "$options" );
$cfiles->checkfilesexist( "$options", $mode );
$cfiles->shownmldiff( "default", "standard" );
if ( defined($opts{'compare'}) ) {
$cfiles->doNOTdodiffonfile( "$tempfile", "$options", $mode );
$cfiles->dodiffonfile( "$real_par_file", "$options", $mode );
$cfiles->comparefiles( "$options", $mode, $opts{'compare'} );
}
if ( defined($opts{'generate'}) ) {
$cfiles->copyfiles( "$options", $mode );
}
&cleanup();

my @crop_res = ( "1x1_numaIA", "4x5", "10x15", "0.9x1.25", "1.9x2.5", "ne3np4.pg3", "ne30np4", "ne30np4.pg3", "C96", "mpasa120" );
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Explaining the mods in this file:

  • Moved smallville out of the 2000 cases because it should be looking for an 1850 file.

foreach my $res ( @crop_res ) {
$options = "-bgc bgc -crop -res $res -envxml_dir .";
&make_env_run();
Expand Down Expand Up @@ -1673,7 +1690,7 @@ sub cat_and_create_namelistinfile {
&cleanup();
# Run FATES mode for several resolutions and configurations
my $clmoptions = "-bgc fates -envxml_dir . -no-megan";
my @clmres = ( "1x1_brazil", "5x5_amazon", "4x5", "1.9x2.5" );
my @clmres = ( "4x5", "1.9x2.5" );
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Explaining the mods in this file:

  • 1x1_brazil and 5x5_amazon are not among the 16-pft files

foreach my $res ( @clmres ) {
$options = "-res $res -clm_start_type cold";
my @edoptions = ( "-use_case 2000_control",
Expand Down
6 changes: 3 additions & 3 deletions cime_config/SystemTests/mksurfdataesmf.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,11 @@ def __init__(self, case):
self._jobscript = os.path.join(self._get_caseroot(), "mksurfdata_jobscript_single")
self._fsurdat_namelist = os.path.join(
self._get_caseroot(),
f"surfdata_{self._res}_hist_78pfts_CMIP6_{self._model_yr}_c{time_stamp}.namelist",
f"surfdata_{self._res}_hist_{self._model_yr}_78pfts_c{time_stamp}.namelist",
)
self._fsurdat_nc = os.path.join(
self._get_caseroot(),
f"surfdata_{self._res}_hist_78pfts_CMIP6_{self._model_yr}_c{time_stamp}.nc",
f"surfdata_{self._res}_hist_{self._model_yr}_78pfts_c{time_stamp}.nc",
)
self._TestStatus_log_path = os.path.join(self._get_caseroot(), "TestStatus.log")

Expand All @@ -64,7 +64,7 @@ def build_phase(self, sharedlib_only=False, model_only=False):
nml_script_path = os.path.join(self._tool_path, "gen_mksurfdata_namelist")
gen_jobscript_path = os.path.join(self._tool_path, "gen_mksurfdata_jobscript_single")
gen_mksurfdata_namelist = f"{nml_script_path} --res {self._res} --start-year {self._model_yr} --end-year {self._model_yr}"
gen_mksurfdata_jobscript = f"{gen_jobscript_path} --number-of-nodes 12 --tasks-per-node 12 --namelist-file {self._fsurdat_namelist}"
gen_mksurfdata_jobscript = f"{gen_jobscript_path} --number-of-nodes 1 --tasks-per-node 64 --namelist-file {self._fsurdat_namelist}"

# Rm tool_bld and build executable that will generate fsurdat
try:
Expand Down
1 change: 1 addition & 0 deletions cime_config/SystemTests/rxcropmaturity.py
Original file line number Diff line number Diff line change
Expand Up @@ -328,6 +328,7 @@ def _create_config_file_evenlysplitcrop(self):
cfg_out.write("PCT_GLACIER = 0.0\n")
cfg_out.write("PCT_WETLAND = 0.0\n")
cfg_out.write("PCT_LAKE = 0.0\n")
cfg_out.write("PCT_OCEAN = 0.0\n")
cfg_out.write("PCT_URBAN = 0.0 0.0 0.0\n")

def _run_check_rxboth_run(self):
Expand Down
2 changes: 1 addition & 1 deletion cime_config/buildnml
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ def buildnml(case, caseroot, compname):
"clm4_5_QIAN": "clm4_5_CRUv7",
"clm4_5_NLDAS2": "clm4_5_CRUv7",
"clm4_5_ERA5": "clm4_5_CRUv7",
"clm5_0_1PT": "clm5_0_GSWP3",
"clm5_0_1PT": "clm5_0_GSWP3v1",
"clm5_0_QIAN": "clm5_0_GSWP3v1",
"clm5_0_NLDAS2": "clm5_0_GSWP3v1",
"clm5_0_ERA5": "clm5_0_GSWP3v1",
Expand Down
26 changes: 17 additions & 9 deletions cime_config/testdefs/ExpectedTestFails.xml
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,21 @@
-->


<!-- ctsm_sci test suite failures -->
<test name="SMS_P14080x1_Ln9.mpasa3p75_mpasa3p75_mt13.I2000Clm51SpRs.derecho_intel.clm-clm51cam6LndTuningMode">
<phase name="RUN">
<status>FAIL</status>
<issue>#2370</issue>
</phase>
</test>

<test name="SMS_Ld12_Mmpi-serial.1x1_urbanc_alpha.I1PtClm51SpRs.derecho_intel.clm-output_sp_highfreq">
<phase name="RUN">
<status>FAIL</status>
<issue>Not opened yet but first posted here: https://github.com/ESCOMP/CTSM/pull/2318#discussion_r1484696000</issue>
</phase>
</test>

<!-- cesm3_dev test suite failures -->
<test name="ERP_D_Ld9.ne30pg3_t232.IHistClm51BgcCrop.derecho_intel.clm-clm51cam6LndTuningMode">
<phase name="RUN">
Expand Down Expand Up @@ -171,17 +186,10 @@
</phase>
</test>

<test name="ERP_P72x2_Ld30.f45_f45_mg37.I2000Clm51FatesRs.cheyenne_intel.clm-mimicsFatesCold">
<phase name="SHAREDLIB_BUILD">
<status>PEND</status>
<issue>#1045</issue>
</phase>
</test>

<test name="ERP_P256x2_Ld30.f45_f45_mg37.I2000Clm51FatesRs.derecho_intel.clm-mimicsFatesCold">
<phase name="SHAREDLIB_BUILD">
<status>PEND</status>
<issue>#1045</issue>
<status>RUN</status>
<issue>#2261</issue>
</phase>
</test>

Expand Down
Loading
Loading