Skip to content

Commit

Permalink
Update develop from gsd/develop 2020/11/20: Unified gravity wave drag…
Browse files Browse the repository at this point in the history
…, updates to other GSL physics (ufs-community#297)

- add unified gravity wave drag (called unified ugwp) that combines the UGWP v1 with the GSL drag suite
- replace high-resolution SAR (standalone regional) regression test with 25km SAR regression test
- update submodule pointer for fv3atm for the changes described in the associated PRs listed below
- add `rt_ccpp_dev.conf` that contains the developmental CCPP tests used by GSL and DTC (so that folks are aware of what is tested and how by DTC and GSL, in addition to what is in `rt.conf` and `rt_gnu.conf`)
- turn on calls to `gcycle`/`sfcsub` for RUC LSM
- regression test configuration scripts for MYNN surface layer
- add `fv3_debug` modules for cheyenne.intel and cheyenne.gnu (per request from @DeniseWorthen)
- bugfix in `rt.sh` to copy two missing input directories `fv3_regional_quilt_netcdf_parallel` and `fv3_stretched_nest_debug` when creating new baselines using `rt.sh -c`
- enable regression testing on Gaea with Intel using the current hpc-stack-nco installation, can now use ecflow
- update of CI tests and small bugfix when comparing results using `tests/compare_ncfile.py` from @MinsukJi-NOAA (see ufs-community#299 for details) - note, the update to `tests/compare_ncfile.py` had to be reverted

Co-authored-by: DomHeinzeller <[email protected]>
Co-authored-by: samuel.trahan <[email protected]>
Co-authored-by: hannah barnes <[email protected]>
Co-authored-by: Michael Toy <[email protected]>
Co-authored-by: Samuel Trahan (NOAA contractor) <[email protected]>
Co-authored-by: MinsukJi-NOAA <[email protected]>
  • Loading branch information
7 people authored Nov 25, 2020
1 parent bfce1df commit fe5a943
Show file tree
Hide file tree
Showing 56 changed files with 2,976 additions and 7,733 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ jobs:
- name: Free up disk space
run: |
sudo docker rmi $(sudo docker image ls | grep -E -m1 '<none>' | awk '{ print $3 }')
sudo docker rmi $(sudo docker image ls | awk '/ci-test-base/ { print $3 }')
sudo docker rmi $(sudo docker image ls | awk '/ubuntu-hpc/ { print $3 }')
- name: Prepare artifacts
run: |
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/manage.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@ jobs:
tr_id=$(cat ${GITHUB_EVENT_PATH} | ./json_helper.py get_trigger_id)
tr_br=$(cat ${GITHUB_EVENT_PATH} | ./json_helper.py get_trigger_br)
check=$(cat ${GITHUB_EVENT_PATH} | ./json_helper.py check_skip)
echo "::set-env name=TRIGGER_ID::${tr_id}"
echo "::set-env name=TRIGGER_BR::${tr_br}"
echo "TRIGGER_ID=${tr_id}" >> $GITHUB_ENV
echo "TRIGGER_BR=${tr_br}" >> $GITHUB_ENV
echo "skip-ci: ${check}"
if [[ $check == yes ]]; then
echo "skip-ci is requested"
echo '::set-env name=CURR_JOB::cancelled'
echo "CURR_JOB=cancelled" >> $GITHUB_ENV
curl -X POST -H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" -H "Accept: application/vnd.github.v3+json" ${repo}/$tr_id/cancel
else
echo '::set-env name=CURR_JOB::running'
echo "CURR_JOB=running" >> $GITHUB_ENV
fi
- name: Cancel redundant jobs
Expand Down
3 changes: 2 additions & 1 deletion cmake/configure_cheyenne.intel.cmake
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
set(INLINE_POST ON CACHE BOOL "Enable inline post" FORCE)
set(INLINE_POST ON CACHE BOOL "Enable inline post" FORCE)
set(PARALLEL_NETCDF ON CACHE BOOL "Enable parallel NetCDF" FORCE)
set(DEBUG_LINKMPI OFF CACHE BOOL "Enable linkmpi option when DEBUG mode is on" FORCE)
3 changes: 2 additions & 1 deletion cmake/configure_gaea.intel.cmake
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
set(INLINE_POST ON CACHE BOOL "Enable inline post" FORCE)
set(INLINE_POST ON CACHE BOOL "Enable inline post" FORCE)
set(PARALLEL_NETCDF ON CACHE BOOL "Enable parallel NetCDF" FORCE)
set(DEBUG_LINKMPI OFF CACHE BOOL "Enable linkmpi option when DEBUG mode is on" FORCE)
45 changes: 45 additions & 0 deletions modulefiles/cheyenne.gnu/fv3_debug
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#%Module

proc ModulesHelp {} {
puts stderr "\tcit - loads modules required for building and running UFS Model on Cheyenne/GNU"
}

module-whatis "loads UFS Model prerequisites for Cheyenne/GNU"

module load cmake/3.16.4
setenv CMAKE_C_COMPILER mpicc
setenv CMAKE_CXX_COMPILER mpicxx
setenv CMAKE_Fortran_COMPILER mpif90
setenv CMAKE_Platform cheyenne.gnu

# load programming environment
module load ncarenv/1.3
module load gnu/9.1.0
module load mpt/2.22
module load ncarcompilers/0.5.0
module unload netcdf

module use /glade/p/ral/jntp/GMTB/tools/hpc-stack-nco-20201113/modulefiles/stack
module load hpc/1.0.0-beta1
module load hpc-gnu/9.1.0
module load hpc-mpt/2.22

module load jasper/2.0.22
module load zlib/1.2.11
module load png/1.6.35

module load hdf5/1.10.6
module load netcdf/4.7.4
module load pio/2.5.1
module load esmf/8_1_0_beta_snapshot_27-debug

module load bacio/2.4.1
module load crtm/2.3.0
module load g2/3.4.1
module load g2tmpl/1.9.1
module load ip/3.3.3
module load nemsio/2.5.2
module load sp/2.3.3
module load w3emc/2.7.3
module load w3nco/2.4.1
module load upp/10.0.0
45 changes: 45 additions & 0 deletions modulefiles/cheyenne.intel/fv3_debug
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
#%Module

proc ModulesHelp {} {
puts stderr "\tcit - loads modules required for building and running UFS Model on Cheyenne/Intel"
}

module-whatis "loads UFS Model prerequisites for Cheyenne/Intel"

module load cmake/3.16.4
setenv CMAKE_C_COMPILER mpicc
setenv CMAKE_CXX_COMPILER mpicxx
setenv CMAKE_Fortran_COMPILER mpif90
setenv CMAKE_Platform cheyenne.intel

# load programming environment
module load ncarenv/1.3
module load intel/19.1.1
module load mpt/2.22
module load ncarcompilers/0.5.0
module unload netcdf

module use /glade/p/ral/jntp/GMTB/tools/hpc-stack-nco-20201113/modulefiles/stack
module load hpc/1.0.0-beta1
module load hpc-intel/19.1.1
module load hpc-mpt/2.22

module load jasper/2.0.22
module load zlib/1.2.11
module load png/1.6.35

module load hdf5/1.10.6
module load netcdf/4.7.4
module load pio/2.5.1
module load esmf/8_1_0_beta_snapshot_27-debug

module load bacio/2.4.1
module load crtm/2.3.0
module load g2/3.4.1
module load g2tmpl/1.9.1
module load ip/3.3.3
module load nemsio/2.5.2
module load sp/2.3.3
module load w3emc/2.7.3
module load w3nco/2.4.1
module load upp/10.0.0
71 changes: 31 additions & 40 deletions modulefiles/gaea.intel/fv3
Original file line number Diff line number Diff line change
@@ -1,59 +1,50 @@
#%Module######################################################################
##
## NEMS FV3 Prerequisites: Gaea/Intel
#%Module

proc ModulesHelp {} {
puts stderr "\tcit - loads modules required for building and running FV3 under NEMS on Gaea/Intel"
puts stderr "\tcit - loads modules required for building and running UFS Model on Gaea/Intel"
}

module-whatis "loads NEMS FV3 prerequisites for Gaea/Intel"
module-whatis "loads UFS Model prerequisites for Gaea/Intel"

# NOTE: the "module purge" and loading of the module command are
# handled by the module-setup.sh (or .csh) script.

##
## load programming environment
## this typically includes compiler, MPI and job scheduler
##
module load PrgEnv-intel/6.0.5
module rm intel
module rm cray-mpich
module rm netcdf
module load intel/18.0.6.288
module load cray-mpich/7.7.11
module load cray-python/3.7.3.2

module load cmake/3.17.0
setenv CMAKE_C_COMPILER cc
setenv CMAKE_CXX_COMPILER CC
setenv CMAKE_Fortran_COMPILER ftn
setenv CMAKE_Platform gaea.intel

module use /lustre/f2/pdata/esrl/gsd/ufs/hpc-stack-nco-20201116/modulefiles/stack

##
## use pre-compiled PNG, NetCDF, ESMF and NCEP libraries for above compiler / MPI combination
##
module use -a /lustre/f2/pdata/esrl/gsd/ufs/ufs-stack-20200909/intel-18.0.6.288/cray-mpich-7.7.11/modules
module load hpc/1.0.0-beta1
module load hpc-intel/18.0.6.288
module load hpc-cray-mpich/7.7.11

module load libpng/1.6.35
module load jasper/2.0.15
module load zlib/1.2.11
module load png/1.6.35

module load hdf5/1.10.6
module load netcdf/4.7.4
module load esmf/8.1.0bs27
module load pio/2.5.1
module load esmf/8_1_0_beta_snapshot_27

module load bacio/2.4.0
module load bacio/2.4.1
module load crtm/2.3.0
module load g2/3.4.0
module load g2tmpl/1.9.0
module load ip/3.3.0
module load nceppost/dceca26
module load nemsio/2.5.1
module load sp/2.3.0
module load w3emc/2.7.0
module load w3nco/2.4.0

module load gfsio/1.4.0
module load sfcio/1.4.0
module load sigio/2.3.0
module load g2/3.4.1
module load g2tmpl/1.9.1
module load ip/3.3.3
module load nemsio/2.5.2
module load sp/2.3.3
module load w3emc/2.7.3
module load w3nco/2.4.1
module load upp/10.0.0

# Needed at runtime:
module load alps

##
## load cmake
##
module load cmake/3.17.0
setenv CMAKE_C_COMPILER cc
setenv CMAKE_CXX_COMPILER CC
setenv CMAKE_Fortran_COMPILER ftn
setenv CMAKE_Platform gaea.intel
6 changes: 3 additions & 3 deletions modulefiles/linux.gnu/fv3
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ export CMAKE_Fortran_COMPILER=${FC}
##
## use own NetCDF library
##
export NETCDF=${NETCDF:-/usr/local}
export NETCDF=${NETCDF:-/home/builder/opt}

##
## use SIONlib library if installed and environment variable is set
Expand All @@ -41,10 +41,10 @@ fi
##
## use pre-compiled EMSF library for above compiler / MPI combination
##
export ESMFMKFILE=${ESMFMKFILE:-/usr/local/lib/esmf.mk}
export ESMFMKFILE=${ESMFMKFILE:-/home/builder/opt/lib/esmf.mk}

##
## NCEP libraries (need to download and build manually, see doc/README_{UBUNTU,CENTOS,...}.txt and https://github.com/NCAR/NCEPlibs)
##
export NCEPLIBS_DIR=${NCEPLIBS_DIR:-/usr/local/NCEPlibs}
export NCEPLIBS_DIR=${NCEPLIBS_DIR:-/home/builder/opt}
export CMAKE_PREFIX_PATH=${NCEPLIBS_DIR}
Loading

0 comments on commit fe5a943

Please sign in to comment.