Skip to content

Commit 3a164a8

Browse files
authored
Merge pull request #1530 from cacraigucar/cam_misc_tag_cesm3
cam6_4_164: Misc tag before CESM3 release
2 parents 0873d11 + 308ffb2 commit 3a164a8

9 files changed

Lines changed: 123 additions & 13 deletions

File tree

.config_files.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<entry_id>
66

77
<!-- This is the same as the default entry in
8-
cime/config/cesm/config_files.xml except for the value for clm:
8+
cime/config/cesm/config_files.xml except for the value for cam:
99
In a standalone cam checkout, COMP_ROOT_DIR_CAM is $SRCROOT
1010
rather than $SRCROOT/components/cam.
1111
However, because of the way overrides are handled, we need to
@@ -17,9 +17,9 @@
1717
<default_value>unset</default_value>
1818
<values>
1919
<value component="cam" >$SRCROOT</value>
20-
<value component="dlnd" >$CIMEROOT/src/components/data_comps/dlnd</value>
21-
<value component="slnd" >$CIMEROOT/src/components/stub_comps/slnd</value>
22-
<value component="xlnd" >$CIMEROOT/src/components/xcpl_comps/xlnd</value>
20+
<value component="datm" >$SRCROOT/components/cdeps/datm</value>
21+
<value component="satm" >$CIMEROOT/CIME/non_py/src/components/stub_comps_$COMP_INTERFACE/satm</value>
22+
<value component="xatm" >$SRCROOT/components/cmeps/med_test_comps/xatm</value>
2323
</values>
2424
<group>case_comps</group>
2525
<file>env_case.xml</file>

.gitmodules

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ fxDONOTUSEurl = https://github.com/ESCOMP/mizuRoute
139139
[submodule "ccs_config"]
140140
path = ccs_config
141141
url = https://github.com/ESMCI/ccs_config_cesm.git
142-
fxtag = ccs_config_cesm1.0.79
142+
fxtag = ccs_config_cesm1.0.81
143143
fxrequired = ToplevelRequired
144144
fxDONOTUSEurl = https://github.com/ESMCI/ccs_config_cesm.git
145145

cime_config/testdefs/testlist_cam.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2498,7 +2498,7 @@
24982498
<machine name="derecho" compiler="intel" category="aux_cam"/>
24992499
</machines>
25002500
<options>
2501-
<option name="wallclock">00:40:00</option>
2501+
<option name="wallclock">00:50:00</option>
25022502
<option name="comment" >WACCM7 with MA chemistry</option>
25032503
</options>
25042504
</test>

doc/ChangeLog

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,71 @@
1+
2+
===============================================================
3+
4+
Tag name: cam6_4_164
5+
Originator(s): cacraigucar, billsacks, sjsprecious, nusbaume, jimmielin
6+
Date: April 15, 2026
7+
One-line Summary: Misc tag before CESM3 release
8+
Github PR URL: https://github.com/ESCOMP/CAM/pull/1530
9+
10+
Purpose of changes (include the issue number and title text for each relevant GitHub issue):
11+
- Fixes for snapshot output in GNU debug: https://github.com/ESCOMP/CAM/pull/1503
12+
- Point to correct locations for datm, satm, and xatm: https://github.com/ESCOMP/CAM/pull/1492
13+
- nvhpc test fails since update to match alphaa08l externals: https://github.com/ESCOMP/CAM/issues/1513
14+
- Wrong function used in SE dycore "prim_printstate": https://github.com/ESCOMP/CAM/issues/1491
15+
16+
Describe any changes made to build system: N/A
17+
18+
Describe any changes made to the namelist: N/A
19+
20+
List any changes to the defaults for the boundary datasets: N/A
21+
22+
Describe any substantial timing or memory changes: N/A
23+
24+
Code reviewed by: jimmielin, cacraigucar
25+
26+
List all files eliminated: N/A
27+
28+
List all files added and what they do: N/A
29+
30+
List all existing files that have been modified, and describe the changes:
31+
M .config_files.xml
32+
- mods for datm, satm and xatm locations
33+
34+
M .gitmodules
35+
M ccs_config
36+
- update ccs_config tag to get fix for GPU test
37+
38+
M cime_config/testdefs/testlist_cam.xml
39+
- increase time for WACCM test which ran past its time limit
40+
41+
M src/control/cam_snapshot_common.F90
42+
M src/physics/cam/physpkg.F90
43+
M src/physics/cam7/physpkg.F90
44+
- fixes for snapshot output
45+
46+
M src/dynamics/se/dycore/prim_state_mod.F90
47+
- "MINVAL" needed to be "MAXVAL" for a calculation
48+
49+
50+
If there were any failures reported from running test_driver.sh on any test
51+
platform, and checkin with these failures has been OK'd by the gatekeeper,
52+
then copy the lines from the td.*.status files for the failed tests to the
53+
appropriate machine below. All failed tests must be justified.
54+
55+
derecho/intel/aux_cam: all BFB
56+
57+
derecho/nvhpc/aux_cam:
58+
ERS_Ln9.ne30pg3_ne30pg3_mt232.FHISTC_LTso.derecho_nvhpc.cam-outfrq9s_gpu_default (Overall: DIFF) details:
59+
- Baseline difference expected per jimmielin
60+
61+
izumi/nag/aux_cam:
62+
ERC_D_Ln9.f10_f10_mt232.FHIST_C5.izumi_nag.cam-outfrq3s_subcol (Overall: FAIL) details:
63+
FAIL ERC_D_Ln9.f10_f10_mt232.FHIST_C5.izumi_nag.cam-outfrq3s_subcol COMPARE_base_rest
64+
- pre-existing failure -- see https://github.com/ESCOMP/CAM/issues/1514
65+
66+
izumi/gnu/aux_cam: all BFB
67+
68+
===============================================================
169
===============================================================
270

371
Tag name: cam6_4_163

src/control/cam_snapshot_common.F90

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1235,7 +1235,14 @@ subroutine cam_pbuf_snapshot_all_outfld(lchnk, file_num, pbuf)
12351235

12361236
! Retrieve the pbuf data. Special handling for certain
12371237
! integer-type fields.
1238-
if( trim(pbuf_snapshot(i)%ddt_string) == 'clubbtop') then
1238+
! This will allow data written out to not be mangled,
1239+
! and also allow writing out snapshots with debug on in GNU compiler.
1240+
if( trim(pbuf_snapshot(i)%ddt_string) == 'clubbtop' .or. &
1241+
trim(pbuf_snapshot(i)%ddt_string) == 'ZM_JT' .or. &
1242+
trim(pbuf_snapshot(i)%ddt_string) == 'ZM_MAXG' .or. &
1243+
trim(pbuf_snapshot(i)%ddt_string) == 'ZM_IDEEP' .or. &
1244+
trim(pbuf_snapshot(i)%ddt_string) == 'NMXRGN' .or. &
1245+
trim(pbuf_snapshot(i)%ddt_string) == 'ACNUNM') then
12391246
call pbuf_get_field(pbuf, pbuf_idx, tmpptr2d_int)
12401247
! copy into real
12411248
allocate(tmpptr2d(size(tmpptr2d_int, 1), size(tmpptr2d_int, 2)))

src/dynamics/se/dycore/prim_state_mod.F90

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ subroutine prim_printstate(elem, tl,hybrid,nets,nete, fvm, omega_cn)
138138
min_local(ie,6) = MINVAL(SUM(fvm(ie)%dp_fvm(1:nc,1:nc,:),DIM=3))+hyai(1)*ps0
139139
max_local(ie,6) = MAXVAL(SUM(fvm(ie)%dp_fvm(1:nc,1:nc,:),DIM=3))+hyai(1)*ps0
140140
min_local(ie,7) = MINVAL(moist_ps_fvm(:,:,ie))
141-
max_local(ie,7) = MINVAL(moist_ps_fvm(:,:,ie))
141+
max_local(ie,7) = MAXVAL(moist_ps_fvm(:,:,ie))
142142
min_local(ie,8) = MINVAL(elem(ie)%state%psdry(:,:))
143143
max_local(ie,8) = MAXVAL(elem(ie)%state%psdry(:,:))
144144
min_local(ie,9) = MINVAL(moist_ps(:,:,ie))

src/physics/cam/physpkg.F90

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1536,6 +1536,12 @@ subroutine tphysac (ztodt, cam_in, &
15361536
ifld = pbuf_get_index('AST')
15371537
call pbuf_get_field(pbuf, ifld, ast, start=(/1,1,itim_old/), kount=(/pcols,pver,1/) )
15381538

1539+
! zero out local variables that may be written to snapshot for safety.
1540+
fh2o(:) = 0._r8 ! used in chem_timestep_tend.
1541+
surfric(:) = 0._r8 ! out from vertical_diffusion_tend.
1542+
obklen(:) = 0._r8 ! out from vertical_diffusion_tend.
1543+
flx_heat(:) = 0._r8 ! first out from gw_drag_cam.
1544+
15391545
!
15401546
! accumulate fluxes into net flux array for spectral dycores
15411547
! jrm Include latent heat of fusion for snow
@@ -2376,6 +2382,19 @@ subroutine tphysbc (ztodt, state, &
23762382

23772383
call t_stopf('bc_init')
23782384

2385+
! Zero-initialize subroutine-level variables for snapshot
2386+
cmfmc(:,:) = 0._r8
2387+
cmfcme(:,:) = 0._r8
2388+
zdu(:,:) = 0._r8
2389+
rliq(:) = 0._r8
2390+
rice(:) = 0._r8
2391+
dlf(:,:) = 0._r8
2392+
dlf2(:,:) = 0._r8
2393+
rliq2(:) = 0._r8
2394+
det_s(:) = 0._r8
2395+
det_ice(:) = 0._r8
2396+
net_flx(:) = 0._r8
2397+
23792398
!===================================================
23802399
! Global mean total energy fixer
23812400
!===================================================
@@ -2533,10 +2552,6 @@ subroutine tphysbc (ztodt, state, &
25332552
dlf(:,:) = 0._r8
25342553
end if
25352554

2536-
! Zero-initialize subroutine-level variables for snapshot
2537-
dlf2(:,:) = 0._r8
2538-
rliq2(:) = 0._r8
2539-
25402555
if (trim(cam_take_snapshot_before) == "convect_shallow_tend") then
25412556
call cam_snapshot_all_outfld_tphysbc(cam_snapshot_before_num, state, tend, cam_in, cam_out, pbuf, &
25422557
flx_heat, cmfmc, cmfcme, zdu, rliq, rice, dlf, dlf2, rliq2, det_s, det_ice, net_flx)

src/physics/cam7/physpkg.F90

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1641,6 +1641,15 @@ subroutine tphysac (ztodt, cam_in, &
16411641
call pbuf_get_field(pbuf, rliqbc_idx, rliqbc)
16421642
rliq(:ncol) = rliqbc(:ncol)
16431643

1644+
! zero out local variables that may be written to snapshot for safety.
1645+
fh2o(:) = 0._r8 ! used in chem_timestep_tend.
1646+
surfric(:) = 0._r8 ! out from vertical_diffusion_tend.
1647+
obklen(:) = 0._r8 ! out from vertical_diffusion_tend.
1648+
flx_heat(:) = 0._r8 ! first out from gw_drag_cam.
1649+
det_s(:) = 0._r8 ! out from clubb_tend_cam.
1650+
det_ice(:) = 0._r8 ! out from clubb_tend_cam.
1651+
net_flx(:) = 0._r8 ! out from radiation_tend.
1652+
16441653
!
16451654
! accumulate fluxes into net flux array for spectral dycores
16461655
! jrm Include latent heat of fusion for snow
@@ -2832,6 +2841,17 @@ subroutine tphysbc (ztodt, state, &
28322841

28332842
call t_stopf('bc_init')
28342843

2844+
! Zero-initialize subroutine-level variables for snapshot
2845+
cmfmc(:,:) = 0._r8
2846+
cmfcme(:,:) = 0._r8
2847+
zdu(:,:) = 0._r8
2848+
rliq(:) = 0._r8
2849+
rice(:) = 0._r8
2850+
dlf(:,:) = 0._r8
2851+
dlf2(:,:) = 0._r8
2852+
rliq2(:) = 0._r8
2853+
net_flx(:) = 0._r8
2854+
28352855
!===================================================
28362856
! Global mean total energy fixer
28372857
!===================================================

0 commit comments

Comments
 (0)