Skip to content

Commit e721127

Browse files
authored
Merge pull request #3010 from E3SM-Project/jgfouca/mappy_rebuild
upstream merge 20240919: Get mappy working again
2 parents 737fa0c + b9b5d12 commit e721127

File tree

193 files changed

+6531
-1074
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

193 files changed

+6531
-1074
lines changed

.github/workflows/e3sm-gh-ci-cime-tests.yml

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -5,14 +5,18 @@ on:
55
branches: [ master ]
66
paths:
77
# first, yes to these
8+
- '.github/workflows/e3sm-gh-ci-cime-tests.yml'
89
- 'cime_config/**'
910
- 'components/eam/**'
11+
- 'components/eamxx/**'
1012
- 'components/elm/**'
1113
- 'driver-moab/**'
1214
- 'driver-mct/**'
1315
# second, no to these
1416
- '!components/eam/docs/**'
1517
- '!components/eam/mkdocs.yml'
18+
- '!components/eamxx/docs/**'
19+
- '!components/eamxx/mkdocs.yml'
1620
- '!components/elm/docs/**'
1721
- '!components/elm/mkdocs.yml'
1822

@@ -26,17 +30,13 @@ jobs:
2630
strategy:
2731
fail-fast: false
2832
matrix:
29-
test:
30-
- SMS_D_P4.ne4pg2_oQU480.F2010.singularity2_gnu
31-
- SMS_P4.ne4pg2_oQU480.F2010.singularity2_gnu
32-
- REP_P4.ne4pg2_oQU480.F2010.singularity2_gnu
33-
- ERS_P4.ne4pg2_oQU480.F2010.singularity2_gnu
34-
- ERS_P4.ne4pg2_oQU480.F2010.singularity2_gnu.eam-wcprod_F2010
35-
- ERP_P4.ne4pg2_oQU480.F2010.singularity2_gnu
36-
- PET_P4.ne4pg2_oQU480.F2010.singularity2_gnu
37-
- PEM_P4.ne4pg2_oQU480.F2010.singularity2_gnu
33+
test:
34+
- SMS_D_Ln5_P4.ne4pg2_oQU480.F2010.ghci-oci_gnu
35+
- ERS_Ld5_P4.ne4pg2_oQU480.F2010.ghci-oci_gnu.eam-wcprod_F2010
36+
- SMS_D_Ln5_P4.ne4pg2_oQU480.F2010-SCREAMv1-MPASSI.ghci-oci_gnu
37+
- ERS_Ld5_P4.ne4pg2_oQU480.F2010-SCREAMv1-MPASSI.ghci-oci_gnu.eamxx-prod
3838
container:
39-
image: ghcr.io/mahf708/e3sm-imgs:v0.0.9
39+
image: ghcr.io/e3sm-project/containers-ghci:ghci-0.1.0
4040

4141
steps:
4242
-
@@ -49,10 +49,6 @@ jobs:
4949
name: CIME
5050
working-directory: cime/scripts
5151
run: |
52-
mkdir -p $HOME/projects/e3sm/cesm-inputdata/atm/cam/physprops/
53-
wget https://web.lcrc.anl.gov/public/e3sm/inputdata/atm/cam/physprops/p3_lookup_table_1.dat-v4.1.2
54-
mv p3_lookup_table_1.dat-v4.1.2 $HOME/projects/e3sm/cesm-inputdata/atm/cam/physprops/
55-
export USER=test
5652
./create_test ${{ matrix.test }} --wait --debug
5753
-
5854
name: Artifacts
@@ -61,7 +57,7 @@ jobs:
6157
with:
6258
name: ${{ matrix.test }}
6359
path: |
64-
~/projects/e3sm/scratch/${{ matrix.test }}*/TestStatus.log
65-
~/projects/e3sm/scratch/${{ matrix.test }}*/bld/*.bldlog.*
66-
~/projects/e3sm/scratch/${{ matrix.test }}*/run/*.log.*
67-
~/projects/e3sm/scratch/${{ matrix.test }}*/run/*.cprnc.out
60+
/projects/e3sm/scratch/${{ matrix.test }}*/TestStatus.log
61+
/projects/e3sm/scratch/${{ matrix.test }}*/bld/*.bldlog.*
62+
/projects/e3sm/scratch/${{ matrix.test }}*/run/*.log.*
63+
/projects/e3sm/scratch/${{ matrix.test }}*/run/*.cprnc.out

.github/workflows/e3sm-gh-ci-w-cime-tests.yml

Lines changed: 9 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -14,22 +14,16 @@ on:
1414
jobs:
1515

1616
ci-w:
17-
if: false
17+
if: ${{ github.event.repository.name == 'e3sm' }}
1818
runs-on: ubuntu-latest
1919
strategy:
2020
fail-fast: false
2121
matrix:
22-
test:
23-
- SMS_D_P8.ne4pg2_oQU480.WCYCL2010NS.singularity2_gnu
24-
- SMS_P8.ne4pg2_oQU480.WCYCL2010NS.singularity2_gnu
25-
- REP_P8.ne4pg2_oQU480.WCYCL2010NS.singularity2_gnu
26-
- ERS_P8.ne4pg2_oQU480.WCYCL2010NS.singularity2_gnu
27-
- ERS_P8.ne4pg2_oQU480.WCYCL2010NS.singularity2_gnu.allactive-wcprod_1850
28-
- ERP_P8.ne4pg2_oQU480.WCYCL2010NS.singularity2_gnu
29-
- PET_P8.ne4pg2_oQU480.WCYCL2010NS.singularity2_gnu
30-
- PEM_P8.ne4pg2_oQU480.WCYCL2010NS.singularity2_gnu
22+
test:
23+
- SMS_D_Ld1_P8.ne4pg2_oQU480.WCYCL2010NS.ghci-oci_gnu
24+
- ERS_Ld3_P8.ne4pg2_oQU480.WCYCL2010NS.ghci-oci_gnu.allactive-wcprod_1850
3125
container:
32-
image: ghcr.io/mahf708/e3sm-imgs:v0.0.9
26+
image: ghcr.io/e3sm-project/containers-ghci:ghci-0.1.0
3327

3428
steps:
3529
-
@@ -42,10 +36,6 @@ jobs:
4236
name: CIME
4337
working-directory: cime/scripts
4438
run: |
45-
mkdir -p $HOME/projects/e3sm/cesm-inputdata/atm/cam/physprops/
46-
wget https://web.lcrc.anl.gov/public/e3sm/inputdata/atm/cam/physprops/p3_lookup_table_1.dat-v4.1.2
47-
mv p3_lookup_table_1.dat-v4.1.2 $HOME/projects/e3sm/cesm-inputdata/atm/cam/physprops/
48-
export USER=test
4939
./create_test ${{ matrix.test }} --wait --debug
5040
-
5141
name: Artifacts
@@ -54,7 +44,7 @@ jobs:
5444
with:
5545
name: ${{ matrix.test }}
5646
path: |
57-
~/projects/e3sm/scratch/${{ matrix.test }}*/TestStatus.log
58-
~/projects/e3sm/scratch/${{ matrix.test }}*/bld/*.bldlog.*
59-
~/projects/e3sm/scratch/${{ matrix.test }}*/run/*.log.*
60-
~/projects/e3sm/scratch/${{ matrix.test }}*/run/*.cprnc.out
47+
/projects/e3sm/scratch/${{ matrix.test }}*/TestStatus.log
48+
/projects/e3sm/scratch/${{ matrix.test }}*/bld/*.bldlog.*
49+
/projects/e3sm/scratch/${{ matrix.test }}*/run/*.log.*
50+
/projects/e3sm/scratch/${{ matrix.test }}*/run/*.cprnc.out

.github/workflows/e3sm-gh-pages.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,10 +30,10 @@ jobs:
3030
submodules: true
3131
- name: Show action trigger
3232
run: echo "= The job was automatically triggered by a ${{github.event_name}} event on repo ${{github.event.repository.name}}."
33-
- name: Set up Python 3.10
34-
uses: actions/setup-python@v5.2.0
33+
- name: Set up Python 3.11
34+
uses: actions/setup-python@v5
3535
with:
36-
python-version: "3.10"
36+
python-version: "3.11"
3737
- name: Install python deps
3838
run: python3 -m pip install mkdocs-material pymdown-extensions mkdocs-monorepo-plugin mdutils mkdocs-bibtex
3939
# build every time (PR or push to master)
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
name: mkatmsrffile
2+
3+
on:
4+
push:
5+
branches: [ master ]
6+
pull_request:
7+
branches: [ master ]
8+
paths:
9+
- 'components/eam/tools/mkatmsrffile/mkatmsrffile.py'
10+
schedule:
11+
- cron: '00 15 * * 2'
12+
workflow_dispatch:
13+
14+
jobs:
15+
mkatmsrffile-test:
16+
runs-on: ubuntu-latest
17+
defaults:
18+
run:
19+
shell: bash -l {0}
20+
outputs:
21+
event_name: ${{ github.event_name }}
22+
steps:
23+
-
24+
name: Repository checkout
25+
uses: actions/checkout@v4
26+
with:
27+
show-progress: false
28+
submodules: false
29+
-
30+
name: Conda setup
31+
uses: conda-incubator/setup-miniconda@v3
32+
with:
33+
activate-environment: "envmkatmsrffile"
34+
miniforge-variant: Mambaforge
35+
miniforge-version: latest
36+
use-mamba: true
37+
mamba-version: "*"
38+
channel-priority: strict
39+
auto-update-conda: true
40+
python-version: 3.11
41+
-
42+
name: Install dependencies
43+
run: |
44+
echo $CONDA_PREFIX
45+
mamba install -y nco xarray numba numpy netcdf4
46+
-
47+
name: Run tests
48+
working-directory: components/eam/tools/mkatmsrffile
49+
run: |
50+
echo $CONDA_PREFIX
51+
wget https://web.lcrc.anl.gov/public/e3sm/inputdata/atm/cam/chem/trop_mozart/dvel/clim_soilw.nc
52+
wget https://web.lcrc.anl.gov/public/e3sm/inputdata/atm/cam/chem/trop_mozart/dvel/regrid_vegetation.nc
53+
wget https://web.lcrc.anl.gov/public/e3sm/inputdata/atm/cam/chem/trop_mozart/dvel/map_1x1_to_ne30pg2_traave_c20240903.nc
54+
python mkatmsrffile.py --map_file=map_1x1_to_ne30pg2_traave_c20240903.nc --vegetation_file=regrid_vegetation.nc --soil_water_file=clim_soilw.nc --dst_grid=ne30pg2
55+
56+
mkatmsrffile-notify:
57+
needs: mkatmsrffile-test
58+
if: ${{ failure() && needs.mkatmsrffile-test.outputs.event_name != 'pull_request' }}
59+
runs-on: ubuntu-latest
60+
steps:
61+
- name: Create issue
62+
run: |
63+
previous_issue_number=$(gh issue list \
64+
--label "$LABELS" \
65+
--json number \
66+
--jq '.[0].number')
67+
if [[ -n $previous_issue_number ]]; then
68+
gh issue comment "$previous_issue_number" \
69+
--body "$BODY"
70+
else
71+
gh issue create \
72+
--title "$TITLE" \
73+
--assignee "$ASSIGNEES" \
74+
--label "$LABELS" \
75+
--body "$BODY"
76+
fi
77+
env:
78+
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
79+
GH_REPO: ${{ github.repository }}
80+
TITLE: mkatmsrffile test failure
81+
ASSIGNEES: whannah1
82+
LABELS: bug,notify-mkatmsrffile-gh-action
83+
BODY: |
84+
Workflow failed! There's likely an issue in the mkatmsrffile tool! For more information, please see:
85+
- Workflow URL: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }} (number ${{ github.run_number }}, attempt ${{ github.run_attempt }})
86+
- Workflow SHA: ${{ github.sha }}

.github/workflows/eamxx-gh-pages.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ jobs:
5454
echo "= The job was automatically triggered by a ${{github.event_name}} event."
5555
5656
- name: Set up Python 3.11
57-
uses: actions/setup-python@v5.2.0
57+
uses: actions/setup-python@v5
5858
with:
5959
python-version: "3.11"
6060

.github/workflows/eamxx_default_files.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@ on:
55
branches: [ master ]
66
pull_request:
77
branches: [ master ]
8+
paths:
9+
- 'components/eamxx/cime_config/namelist_defaults_scream.xml'
810
schedule:
911
- cron: '00 00 * * *'
1012
workflow_dispatch:
@@ -22,7 +24,7 @@ jobs:
2224
show-progress: false
2325
submodules: false
2426
- name: Set up Python 3.11
25-
uses: actions/setup-python@v5.2.0
27+
uses: actions/setup-python@v5
2628
with:
2729
python-version: "3.11"
2830
- name: Run unit tests

cime

Submodule cime updated 71 files

cime_config/allactive/config_compsets.xml

Lines changed: 45 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -86,23 +86,65 @@
8686
<lname>20TRSOI_EAM%CMIP6_ELM%CNPRDCTCBCTOP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
8787
</compset>
8888

89+
<!-- Compsets for historical single forcing experiments, two aliases each with WCYCL20TR or hist as prefix -->
90+
91+
<compset>
92+
<alias>WCYCL20TR-GHG</alias>
93+
<lname>20TRSOI_EAM%CMIP6-GHG_ELM%CNPRDCTCBCTOP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
94+
</compset>
95+
96+
<compset>
97+
<alias>WCYCL20TR-aer</alias>
98+
<lname>20TRSOI_EAM%CMIP6-AER_ELM%CNPRDCTCBCTOP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
99+
</compset>
100+
101+
<compset>
102+
<alias>WCYCL20TR-xGHG-xaer</alias>
103+
<lname>20TRSOI_EAM%CMIP6-xGHG-xAER_ELM%CNPRDCTCBCTOP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
104+
</compset>
105+
106+
<compset>
107+
<alias>WCYCL20TR-nat</alias>
108+
<lname>20TRSOI_EAM%CMIP6-NAT_ELM%CNPRDCTCBCTOP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
109+
</compset>
110+
111+
<compset>
112+
<alias>WCYCL20TR-ozone</alias>
113+
<lname>20TRSOI_EAM%CMIP6-OZONE_ELM%CNPRDCTCBCTOP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
114+
</compset>
115+
116+
<compset>
117+
<alias>WCYCL20TR-lulc</alias>
118+
<lname>20TRSOI_EAM%CMIP6-LULC_ELM%CNPRDCTCBCTOP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
119+
</compset>
120+
121+
<compset>
122+
<alias>WCYCL20TR-volc</alias>
123+
<lname>20TRSOI_EAM%CMIP6-VOLC_ELM%CNPRDCTCBCTOP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
124+
</compset>
125+
126+
<compset>
127+
<alias>WCYCL20TR-xaer</alias>
128+
<lname>20TRSOI_EAM%CMIP6-xAER_ELM%CNPRDCTCBCTOP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
129+
</compset>
130+
89131
<!-- ************************************************ -->
90132
<!-- MMF coupled compsets -->
91133
<!-- ************************************************ -->
92134
<compset>
93135
<alias>WCYCL1950-MMF1</alias>
94-
<lname>1950SOI_EAM%CMIP6-MMF1_ELM%SPBC_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
136+
<lname>1950SOI_EAM%MMF1_ELM%SPBC_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
95137
</compset>
96138

97139
<compset>
98140
<alias>WCYCL20TR-MMF1</alias>
99-
<lname>20TRSOI_EAM%CMIP6-MMF1_ELM%SP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
141+
<lname>20TRSOI_EAM%MMF1_ELM%SP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
100142
</compset>
101143

102144
<!-- separate compset for testing (NS = no spinup) -->
103145
<compset>
104146
<alias>WCYCL20TRNS-MMF1</alias>
105-
<lname>20TR_EAM%CMIP6-MMF1_ELM%SP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
147+
<lname>20TR_EAM%MMF1_ELM%SP_MPASSI_MPASO_MOSART_SGLC_SWAV</lname>
106148
</compset>
107149
<!-- ************************************************** -->
108150
<!-- ************************************************** -->

cime_config/allactive/config_pesall.xml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1472,6 +1472,21 @@
14721472
</rootpe>
14731473
</pes>
14741474
</mach>
1475+
<mach name="sunspot|aurora">
1476+
<pes compset=".*EAM.+ELM.+MPASSI.+MPASO.+SGLC_SWAV_SIAC_SESP_BGC.*" pesize="any">
1477+
<comment>sunspot|aurora: --compset BGC* --res ne30pg2_r05_IcoswISC30E3r5 on 2 nodes pure-MPI</comment>
1478+
<ntasks>
1479+
<ntasks_atm>-2</ntasks_atm>
1480+
<ntasks_lnd>-2</ntasks_lnd>
1481+
<ntasks_rof>-2</ntasks_rof>
1482+
<ntasks_ice>-2</ntasks_ice>
1483+
<ntasks_ocn>-2</ntasks_ocn>
1484+
<ntasks_cpl>-2</ntasks_cpl>
1485+
<ntasks_glc>-2</ntasks_glc>
1486+
<ntasks_wav>-2</ntasks_wav>
1487+
</ntasks>
1488+
</pes>
1489+
</mach>
14751490
</grid>
14761491
<grid name="a%ne30np4.pg2_l%r05_oi%IcosXISC30E3r7_r%r05_.+">
14771492
<mach name="chrysalis">
@@ -1744,6 +1759,21 @@
17441759
</nthrds>
17451760
</pes>
17461761
</mach>
1762+
<mach name="sunspot|aurora">
1763+
<pes compset="any" pesize="any">
1764+
<comment>allactive+sunspot|aurora: default, 96 mpi x 1 omp @ root 0</comment>
1765+
<ntasks>
1766+
<ntasks_atm>96</ntasks_atm>
1767+
<ntasks_lnd>96</ntasks_lnd>
1768+
<ntasks_rof>96</ntasks_rof>
1769+
<ntasks_ice>96</ntasks_ice>
1770+
<ntasks_ocn>96</ntasks_ocn>
1771+
<ntasks_glc>96</ntasks_glc>
1772+
<ntasks_wav>96</ntasks_wav>
1773+
<ntasks_cpl>96</ntasks_cpl>
1774+
</ntasks>
1775+
</pes>
1776+
</mach>
17471777
</grid>
17481778
<grid name="a%ne30np4">
17491779
<mach name="pm-gpu|muller-gpu">

cime_config/config_files.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -348,6 +348,7 @@
348348
<value component="cice" >$COMP_ROOT_DIR_ICE/cime_config/testdefs/testmods_dirs</value>
349349
<value component="mosart" >$COMP_ROOT_DIR_ROF/cime_config/testdefs/testmods_dirs</value>
350350
<value component="scream" >$COMP_ROOT_DIR_ATM/cime_config/testdefs/testmods_dirs</value>
351+
<value component="eamxx" >$COMP_ROOT_DIR_ATM/cime_config/testdefs/testmods_dirs</value>
351352
<value component="mpaso" >$COMP_ROOT_DIR_OCN/cime_config/testdefs/testmods_dirs</value>
352353
<value component="mpassi" >$COMP_ROOT_DIR_ICE/cime_config/testdefs/testmods_dirs</value>
353354
<value component="ww3" >$COMP_ROOT_DIR_WAV/cime_config/testdefs/testmods_dirs</value>
Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,5 @@
11

2-
set(CPPDEFS "${CPPDEFS} -DMPAS_OPENMP_OFFLOAD")
3-
list(APPEND MPAS_ADD_ACC_FLAGS
4-
${CMAKE_BINARY_DIR}/core_seaice/shared/mpas_seaice_mesh_pool.f90
5-
${CMAKE_BINARY_DIR}/core_seaice/shared/mpas_seaice_velocity_solver_variational.f90
6-
${CMAKE_BINARY_DIR}/core_seaice/shared/mpas_seaice_velocity_solver.f90
7-
)
8-
9-
foreach(ITEM IN LISTS MPAS_ADD_ACC_FLAGS)
10-
e3sm_add_flags("${ITEM}" "-fiopenmp -fopenmp-targets=spir64")
11-
endforeach()
12-
132
# compile mpas_seaice_core_interface.f90 with ifort, not ifx
14-
e3sm_add_flags("${CMAKE_BINARY_DIR}/core_seaice/model_forward/mpas_seaice_core_interface.f90" "-fc=ifort")
3+
if (NOT MPILIB STREQUAL "openmpi")
4+
e3sm_add_flags("${CMAKE_BINARY_DIR}/core_seaice/model_forward/mpas_seaice_core_interface.f90" "-fc=ifort")
5+
endif()

cime_config/machines/cmake_macros/amdclang_frontier.cmake

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,4 +9,7 @@ string(APPEND CPPDEFS " -DLINUX")
99
if (COMP_NAME STREQUAL gptl)
1010
string(APPEND CPPDEFS " -DHAVE_NANOTIME -DBIT64 -DHAVE_SLASHPROC -DHAVE_COMM_F2C -DHAVE_TIMES -DHAVE_GETTIMEOFDAY")
1111
endif()
12-
string(APPEND CMAKE_EXE_LINKER_FLAGS " -L$ENV{CRAY_LIBSCI_PREFIX_DIR}/lib -lsci_amd")
12+
string(APPEND CMAKE_EXE_LINKER_FLAGS " -L/opt/cray/pe/gcc/12.2.0/snos/lib64 -lgfortran -lstdc++")
13+
14+
# to support Fortran specific compiler intrinsic functions
15+
set(E3SM_LINK_WITH_FORTRAN "TRUE")

0 commit comments

Comments
 (0)