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

S2s prototype4 #2

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,13 @@ module load rocoto
rocotorun -w workflow.xml -d workflow.db
```

## Using crons on Orion

On orion, you will need to update the path to rocotorun in the autogenerated workflow.crontab to be
/apps/contrib/rocoto/1.3.1/bin/rocotorun

Also note, on orion you need to be on login node 1 for cronjobs.

## Resource handling
There are two ways of changing resource settings (cpu count, time limits, threads) for a job that has already been defined in the workflow.

Expand Down
9 changes: 0 additions & 9 deletions env/ORION.env
Original file line number Diff line number Diff line change
Expand Up @@ -42,20 +42,11 @@ if [ $step = "prep" -o $step = "prepbufr" ]; then
export BACK=${BACK:-"YES"}
export sys_tp="ORION"

elif [ $step = "waveinit" -o $step = "waveprep" ]; then

export mpmd="--multi-prog"
export CFP_MP="YES"

elif [ $step = "anal" ]; then

export MKL_NUM_THREADS=4
export MKL_CBWR=AUTO

export USE_CFP=${USE_CFP:-"YES"}
export CFP_MP="YES" # For analdiag with SLURM
export APRUNCFP="$launcher"

nth_max=$(($npe_node_max / $npe_node_anal))

export NTHREADS_GSI=${nth_anal:-$nth_max}
Expand Down
2 changes: 1 addition & 1 deletion jobs/JGLOBAL_FORECAST
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ date
#############################
# Source relevant config files
#############################
configs="base fcst"
configs="base fcst wave"
export EXPDIR=${EXPDIR:-$HOMEgfs/parm/config}
config_path=${EXPDIR:-$NWROOT/gfs.${gfs_ver}/parm/config}
for config in $configs; do
Expand Down
5 changes: 4 additions & 1 deletion jobs/JWAVE_POST_SBS
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ set -x -e
#############################
# Source relevant config files
#############################
configs="base wave wavepostsbs"
configs="base wave"
export EXPDIR=${EXPDIR:-$HOMEgfs/parm/config}
config_path=${EXPDIR:-$NWROOT/gfs.${gfs_ver}/parm/config}
for config in $configs; do
Expand Down Expand Up @@ -36,6 +36,9 @@ export DATA=${DATA:-${DATAROOT}/${jobid:?}}
mkdir -p $DATA
cd $DATA

cyc=${cyc:-00}
export cycle=${cycle:-t${cyc}z}

# Set PDY
setpdy.sh
sh ./PDY
Expand Down
6 changes: 3 additions & 3 deletions jobs/JWAVE_PREP
Original file line number Diff line number Diff line change
Expand Up @@ -50,9 +50,9 @@ export RPDY=$PDY

export pgmout=OUTPUT.$$

export COMINice=$((COMINice:-$COMROOTp2/omb/prod))
export COMINwnd=$((COMINwnd:-$COMROOT/gfs/prod))
export COMIN_WAV_CUR=$((COMIN_WAV_CUR:-$COMROOTp2/rtofs/prod))
export COMINice=${COMINice:-${COMROOTp2}/omb/prod}
export COMINwnd=${COMINwnd:-${COMROOT}/gfs/prod}
export COMIN_WAV_CUR=${COMIN_WAV_CUR:-${COMROOTp2}/rtofs/prod}

export COMINwave=${COMINwave:-${ROTDIR:?}}
export COMOUTwave=${COMOUTwave:-${ROTDIR:?}}
Expand Down
2 changes: 1 addition & 1 deletion modulefiles/module-setup.sh.inc
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ elif [[ -d /scratch1 ]] ; then
elif [[ -d /work ]] ; then
# We are on MSU Orion
if ( ! eval module help > /dev/null 2>&1 ) ; then
source /apps/lmod/init/$__ms_shell
source /apps/lmod/lmod/init/$__ms_shell
fi
module purge
elif [[ -d /gpfs/hps && -e /etc/SuSE-release ]] ; then
Expand Down
40 changes: 26 additions & 14 deletions modulefiles/module_base.orion
Original file line number Diff line number Diff line change
Expand Up @@ -6,28 +6,37 @@
## load contrib environment
## load slurm utils (arbitrary.pl layout.pl)
##
module load contrib noaatools

##
## load programming environment
## this typically includes compiler, MPI and job scheduler
##
module load intel/2018.4
module load impi/2018.4
module load wgrib/2.0.8
module load nco/4.8.1
module load intel/2018
module load impi/2018

module load gempak/7.5.1
#For ocean post:
module load ncl/6.6.2
module load nco/4.8.1

##
## NCEP libraries (temporary version to match the CCPP requirements)
##
module use /apps/contrib/NCEPLIBS/orion/modulefiles
module load grib_util/1.2.0
module load prod_util/1.2.0
module load bacio/2.0.3
module load ip/3.0.2
module load nemsio/2.2.4
module load sp/2.0.3
module load w3emc/2.4.0
module load w3nco/2.0.7
module load g2/3.1.1
module load g2tmpl/1.6.0
module load crtm/2.3.0
module load netcdf_parallel/4.7.4
module load hdf5_parallel/1.10.6
module load jasper/1.900.2
module load png/1.2.44
module load z/1.2.6

module load prod_util/1.2.0
##
## load ESMF library for above compiler / MPI combination
## use pre-compiled EMSF library for above compiler / MPI combination
Expand All @@ -37,13 +46,16 @@ module load netcdfp/4.7.4
module load esmflocal/8.0.0.para
module load post-intel-sandybridge/8.0.5

module load contrib
module load rocoto/1.3.1
module load slurm/19.05.3-2

# Python
module load python/3.7.5
module load netcdf_parallel/4.7.4
module load hdf5_parallel/1.10.6
module load wgrib/2.0.8
module load grib_util/1.2.0

module load slurm/19.05.3-2

##
### load cmake
###
module load cmake/3.15.4
setenv CMAKE_C_COMPILER mpiicc
Expand Down
1 change: 0 additions & 1 deletion scripts/exwave_prep.sh
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,6 @@
# Nov2012 JHAlves - Transitioning to WCOSS #
# Apr2019 JHAlves - Transitioning to GEFS workflow #
# Nov2019 JHAlves - Merging wave scripts to global workflow #
# Jun2020 JHAlves - Porting to R&D machine Hera #
# #
# WAV_MOD_ID and WAV_MOD_TAG replace modID. WAV_MOD_TAG #
# is used for ensemble-specific I/O. For deterministic #
Expand Down
1 change: 0 additions & 1 deletion sorc/build_fv3_coupled.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,6 @@ if [ ! -d "../exec" ]; then
mkdir ../exec
fi

if [ $target = theia ]; then target=theia.intel ; fi

cd fv3_coupled.fd/NEMS
make -j 8 app=coupledFV3_CCPP_MOM6_CICE_WW3 build
Expand Down
2 changes: 1 addition & 1 deletion sorc/checkout.sh
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ rm -f ${topdir}/checkout-fv3_coupled.log
if [[ ! -d fv3_coupled.fd ]] ; then
git clone https://github.com/ufs-community/ufs-s2s-model fv3_coupled.fd >> ${topdir}/checkout-fv3_coupled.log 2>&1
cd fv3_coupled.fd
git checkout s2s_prototype4.0
git checkout ufss2s_cmeps_v0.7
git submodule update --init --recursive
cd ${topdir}
else
Expand Down
2 changes: 1 addition & 1 deletion sorc/link_fv3gfs.sh
Original file line number Diff line number Diff line change
Expand Up @@ -344,7 +344,7 @@ cd $pwd/../parm/config
#fi
#------------------------------
if [ $model = "coupled" ] ; then
rm -f config.base
#rm -f config.base
#cp -p config.base.emc.dyn_coupled config.base
cd $pwd/../fix
# Add fixed files needed for coupled ufs-s2s-model
Expand Down