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

Move machine-based options from config.base to host files #3053

Merged
merged 19 commits into from
Nov 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
19 commits
Select commit Hold shift + click to select a range
5f88b72
Move machine-specific options to host files
DavidHuber-NOAA Nov 1, 2024
1a146fb
Rearrange setup_expt.py config setup so machine opts are updated last.
DavidHuber-NOAA Nov 1, 2024
f279db7
Move machine aerosol inputs directories to host files
DavidHuber-NOAA Nov 1, 2024
c98a3c9
Enable HPSS archiving on WCOSS2
DavidHuber-NOAA Nov 1, 2024
7c22d0d
Added missing braces in config.prepoceanobs
DavidHuber-NOAA Nov 1, 2024
00977b9
Disable HPSS archiving on WCOSS2
DavidHuber-NOAA Nov 1, 2024
098a774
Fix downstream archive issue, reenable wcoss2 HPSS archiving
DavidHuber-NOAA Nov 1, 2024
bae4a3d
Merge remote-tracking branch 'origin/develop' into feature/machine_opts
DavidHuber-NOAA Nov 1, 2024
df8d105
Exit generate_workflows if a bad input is given
DavidHuber-NOAA Nov 1, 2024
39872bd
Merge branch 'develop' into feature/machine_opts
DavidHuber-NOAA Nov 4, 2024
86c66f9
Apply suggestions from code review
DavidHuber-NOAA Nov 6, 2024
88aaa12
Check wave support at setup time rather than runtime
DavidHuber-NOAA Nov 6, 2024
2a89ef8
Update parm/config/gefs/config.base
DavidHuber-NOAA Nov 6, 2024
4ad195f
Satisfy flake8
DavidHuber-NOAA Nov 6, 2024
fc75a22
Allow config.aero to be modified by the machine yamls
DavidHuber-NOAA Nov 6, 2024
390656a
Merge remote-tracking branch 'origin/develop' into feature/machine_opts
DavidHuber-NOAA Nov 12, 2024
5c52594
module_gwci.wcoss2.lua
DavidHuber-NOAA Nov 12, 2024
339a0e5
Merge remote-tracking branch 'origin/develop' into feature/machine_opts
DavidHuber-NOAA Nov 13, 2024
1748b7d
Temporarilly disable UFS DA test on WCOSS2
DavidHuber-NOAA Nov 13, 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
2 changes: 1 addition & 1 deletion ci/cases/pr/C96C48_ufs_hybatmDA.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@ skip_ci_on_hosts:
- gaea
- orion
- hercules

- wcoss2
1 change: 0 additions & 1 deletion ci/cases/yamls/ufs_hybatmDA_defaults.ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,4 +17,3 @@ nsst:
NST_MODEL: "1"
sfcanl:
DONST: "NO"

3 changes: 3 additions & 0 deletions modulefiles/module_gwsetup.wcoss2.lua
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,8 @@ Load environment to run GFS workflow ci scripts on WCOSS2

prepend_path("MODULEPATH", "/apps/ops/test/nco/modulefiles/core")
load(pathJoin("rocoto","1.3.5"))
load(pathJoin("PrgEnv-intel"))
load(pathJoin("intel","19.1.3.304"))
load(pathJoin("python", "3.8.6"))

whatis("Description: GFS run setup environment")
4 changes: 2 additions & 2 deletions parm/archive/gfs_downstream.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ gfs_downstream:
- "{{ COMIN_ATMOS_GEMPAK | relpath(ROTDIR) }}/gfs_{{ cycle_YMDH }}.sfc"
- "{{ COMIN_ATMOS_GEMPAK | relpath(ROTDIR) }}/gfs_{{ cycle_YMDH }}.snd"
{% for i in range(1, NUM_SND_COLLECTIVES) %}
- "{{ COMIN_ATMOS_WMO | relpath(ROTDIR) }}/gfs_collective{{ i }}.postsnd_{{ cycle_HH }}"
- "{{ COMIN_ATMOS_BUFR | relpath(ROTDIR) }}/gfs_collective{{ i }}.fil"
{% endfor %}
- "{{ COMIN_ATMOS_BUFR | relpath(ROTDIR) }}/bufr.t{{ cycle_HH }}z"
- "{{ COMIN_ATMOS_BUFR | relpath(ROTDIR) }}/bufr.??????.{{ cycle_YMDH }}"
- "{{ COMIN_ATMOS_BUFR | relpath(ROTDIR) }}/gfs.t{{ cycle_HH }}z.bufrsnd.tar.gz"
13 changes: 3 additions & 10 deletions parm/config/gefs/config.base
Original file line number Diff line number Diff line change
Expand Up @@ -210,12 +210,11 @@ case "${APP}" in
if [[ "${APP}" =~ ^S2SW ]]; then
export DO_WAVE="YES"
export WAVE_RUN="both"
export cplwav2atm=".true."
fi
;;
*)
echo "Unrecognized APP: ${1}"
exit 1
echo "FATAL ERROR: Unrecognized APP: '${APP}'"
exit 2
;;
esac

Expand Down Expand Up @@ -327,7 +326,7 @@ export HPSSARCH="@HPSSARCH@" # save data to HPSS archive
export LOCALARCH="@LOCALARCH@" # save data to local archive
if [[ ${HPSSARCH} = "YES" ]] && [[ ${LOCALARCH} = "YES" ]]; then
echo "Both HPSS and local archiving selected. Please choose one or the other."
exit 2
exit 3
fi
export ARCH_CYC=00 # Archive data at this cycle for warm_start capability
export ARCH_WARMICFREQ=4 # Archive frequency in days for warm_start capability
Expand All @@ -338,10 +337,4 @@ export DELETE_COM_IN_ARCHIVE_JOB="YES" # NO=retain ROTDIR. YES default in arc
# Number of regional collectives to create soundings for
export NUM_SND_COLLECTIVES=${NUM_SND_COLLECTIVES:-9}

# The tracker, genesis, and METplus jobs are not supported on CSPs yet
# TODO: we should place these in workflow/hosts/[aws|azure|google]pw.yaml as part of CSP's setup, not for general.
if [[ "${machine}" =~ "PW" ]]; then
export DO_WAVE="NO"
fi

echo "END: config.base"
30 changes: 1 addition & 29 deletions parm/config/gfs/config.aero
Original file line number Diff line number Diff line change
Expand Up @@ -2,36 +2,8 @@

# UFS-Aerosols settings

# Turn off warnings about unused variables
# shellcheck disable=SC2034


# Path to the input data tree
case ${machine} in
"HERA")
AERO_INPUTS_DIR="/scratch1/NCEPDEV/global/glopara/data/gocart_emissions"
;;
"ORION" | "HERCULES")
AERO_INPUTS_DIR="/work2/noaa/global/wkolczyn/noscrub/global-workflow/gocart_emissions"
;;
"S4")
AERO_INPUTS_DIR="/data/prod/glopara/gocart_emissions"
;;
"WCOSS2")
AERO_INPUTS_DIR="/lfs/h2/emc/global/noscrub/emc.global/data/gocart_emissions"
;;
"GAEA")
AERO_INPUTS_DIR="/gpfs/f5/epic/proj-shared/global/glopara/data/gocart_emissions"
;;
"JET")
AERO_INPUTS_DIR="/lfs5/HFIP/hfv3gfs/glopara/data/gocart_emissions"
;;
*)
echo "FATAL ERROR: Machine ${machine} unsupported for aerosols"
exit 2
;;
esac
export AERO_INPUTS_DIR
export AERO_INPUTS_DIR=@AERO_INPUTS_DIR@

export AERO_DIAG_TABLE="${PARMgfs}/ufs/fv3/diag_table.aero"
export AERO_FIELD_TABLE="${PARMgfs}/ufs/fv3/field_table.aero"
Expand Down
20 changes: 2 additions & 18 deletions parm/config/gfs/config.base
Original file line number Diff line number Diff line change
Expand Up @@ -260,7 +260,7 @@ case "${APP}" in
;;
*)
echo "Unrecognized APP: '${APP}'"
exit 1
exit 2
;;
esac

Expand Down Expand Up @@ -462,7 +462,7 @@ export HPSSARCH="@HPSSARCH@" # save data to HPSS archive
export LOCALARCH="@LOCALARCH@" # save data to local archive
if [[ ${HPSSARCH} = "YES" ]] && [[ ${LOCALARCH} = "YES" ]]; then
echo "Both HPSS and local archiving selected. Please choose one or the other."
exit 2
exit 3
fi
export ARCH_CYC=00 # Archive data at this cycle for warm_start capability
export ARCH_WARMICFREQ=4 # Archive frequency in days for warm_start capability
Expand All @@ -483,20 +483,4 @@ export OFFSET_START_HOUR=0
# Number of regional collectives to create soundings for
export NUM_SND_COLLECTIVES=${NUM_SND_COLLECTIVES:-9}

# The tracker, genesis, and METplus jobs are not supported on CSPs yet
# TODO: we should place these in workflow/hosts/awspw.yaml as part of AWS/AZURE setup, not for general.
if [[ "${machine}" =~ "PW" ]]; then
export DO_TRACKER="NO"
export DO_GENESIS="NO"
export DO_METP="NO"
export DO_WAVE="NO"
fi

# The tracker and genesis are not installed on Orion/Hercules yet; this requires spack-stack builds of the package.
# TODO: we should place these in workflow/hosts/[orion|hercules].yaml.
if [[ "${machine}" == "ORION" || "${machine}" == "HERCULES" ]]; then
export DO_TRACKER="NO"
export DO_GENESIS="NO"
fi

echo "END: config.base"
7 changes: 6 additions & 1 deletion parm/config/gfs/config.prepoceanobs
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,12 @@ export OBS_LIST=@SOCA_OBS_LIST@
export OBS_YAML=${OBS_LIST}

# ocean analysis needs own dmpdir until standard dmpdir has full ocean obs
export DMPDIR=@DMPDIR@
use_exp_obs="@use_exp_obs@"
Fixed Show fixed Hide fixed
if [[ "${use_exp_obs}" == "YES" ]]; then
dmpdir_exp="@dmpdir_exp@"
fi

export DMPDIR="${dmpdir_exp:-${DMPDIR}}"

# For BUFR2IODA json and python scripts
export JSON_TMPL_DIR="${PARMgfs}/gdas/ioda/bufr2ioda"
Expand Down
7 changes: 6 additions & 1 deletion parm/config/gfs/yaml/defaults.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -61,4 +61,9 @@ prepoceanobs:
SOCA_INPUT_FIX_DIR: "${FIXgfs}/gdas/soca/72x35x25/soca"
SOCA_OBS_LIST: "${PARMgfs}/gdas/soca/obs/obs_list.yaml" # TODO: This is also repeated in ocnanal
OBSPREP_YAML: "${PARMgfs}/gdas/soca/obsprep/obsprep_config.yaml"
DMPDIR: "${BASE_DATA}/experimental_obs"
use_exp_obs: "YES"
dmpdir_exp: "${BASE_DATA}/experimental_obs"

# config.aero has just a system-specific path to add.
# This is handled by the setup_expt.py, but it has to be told to write to it.
aero: {}
2 changes: 2 additions & 0 deletions workflow/generate_workflows.sh
Original file line number Diff line number Diff line change
Expand Up @@ -150,10 +150,12 @@ while [[ $# -gt 0 && "$1" != "--" ]]; do
:)
echo "[${BASH_SOURCE[0]}]: ${option} requires an argument"
_usage
exit 1
;;
*)
echo "[${BASH_SOURCE[0]}]: Unrecognized option: ${option}"
_usage
exit 1
;;
esac
done
Expand Down
4 changes: 4 additions & 0 deletions workflow/hosts/awspw.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,8 @@ LOCALARCH: 'NO'
ATARDIR: '' # TODO: This will not yet work from AWS.
MAKE_NSSTBUFR: 'NO'
MAKE_ACFTBUFR: 'NO'
DO_TRACKER: 'NO'
DO_GENESIS: 'NO'
DO_METP: 'NO'
SUPPORT_WAVES: 'NO'
SUPPORTED_RESOLUTIONS: ['C48', 'C96'] # TODO: Test and support all cubed-sphere resolutions.
1 change: 1 addition & 0 deletions workflow/hosts/azurepw.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,5 @@ LOCALARCH: 'NO'
ATARDIR: '' # TODO: This will not yet work from AZURE.
MAKE_NSSTBUFR: 'NO'
MAKE_ACFTBUFR: 'NO'
SUPPORT_WAVES: 'NO'
SUPPORTED_RESOLUTIONS: ['C48', 'C96'] # TODO: Test and support all cubed-sphere resolutions.
1 change: 1 addition & 0 deletions workflow/hosts/gaea.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,4 @@ ATARDIR: '${NOSCRUB}/archive_rotdir/${PSLOT}'
MAKE_NSSTBUFR: 'NO'
MAKE_ACFTBUFR: 'NO'
SUPPORTED_RESOLUTIONS: ['C1152', 'C768', 'C384', 'C192', 'C96', 'C48']
AERO_INPUTS_DIR: /gpfs/f5/epic/proj-shared/global/glopara/data/gocart_emissions
1 change: 1 addition & 0 deletions workflow/hosts/googlepw.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,4 +24,5 @@ LOCALARCH: 'NO'
ATARDIR: '' # TODO: This will not yet work from GOOGLE.
MAKE_NSSTBUFR: 'NO'
MAKE_ACFTBUFR: 'NO'
SUPPORT_WAVES: 'NO'
SUPPORTED_RESOLUTIONS: ['C48', 'C96'] # TODO: Test and support all cubed-sphere resolutions.
1 change: 1 addition & 0 deletions workflow/hosts/hera.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,4 @@ SUPPORTED_RESOLUTIONS: ['C1152', 'C768', 'C384', 'C192', 'C96', 'C48']
COMINecmwf: /scratch1/NCEPDEV/global/glopara/data/external_gempak/ecmwf
COMINnam: /scratch1/NCEPDEV/global/glopara/data/external_gempak/nam
COMINukmet: /scratch1/NCEPDEV/global/glopara/data/external_gempak/ukmet
AERO_INPUTS_DIR: /scratch1/NCEPDEV/global/glopara/data/gocart_emissions
3 changes: 3 additions & 0 deletions workflow/hosts/hercules.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,10 @@ LOCALARCH: 'NO'
ATARDIR: '${NOSCRUB}/archive_rotdir/${PSLOT}'
MAKE_NSSTBUFR: 'NO'
MAKE_ACFTBUFR: 'NO'
DO_TRACKER: 'NO'
DO_GENESIS: 'NO'
SUPPORTED_RESOLUTIONS: ['C1152', 'C768', 'C384', 'C192', 'C96', 'C48']
COMINecmwf: /work/noaa/global/glopara/data/external_gempak/ecmwf
COMINnam: /work/noaa/global/glopara/data/external_gempak/nam
COMINukmet: /work/noaa/global/glopara/data/external_gempak/ukmet
AERO_INPUTS_DIR: /work2/noaa/global/wkolczyn/noscrub/global-workflow/gocart_emissions
1 change: 1 addition & 0 deletions workflow/hosts/jet.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,4 @@ SUPPORTED_RESOLUTIONS: ['C384', 'C192', 'C96', 'C48']
COMINecmwf: /mnt/lfs5/HFIP/hfv3gfs/glopara/data/external_gempak/ecmwf
COMINnam: /mnt/lfs5/HFIP/hfv3gfs/glopara/data/external_gempak/nam
COMINukmet: /mnt/lfs5/HFIP/hfv3gfs/glopara/data/external_gempak/ukmet
AERO_INPUTS_DIR: /lfs5/HFIP/hfv3gfs/glopara/data/gocart_emissions
3 changes: 3 additions & 0 deletions workflow/hosts/orion.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,10 @@ LOCALARCH: 'NO'
ATARDIR: '${NOSCRUB}/archive_rotdir/${PSLOT}'
MAKE_NSSTBUFR: 'NO'
MAKE_ACFTBUFR: 'NO'
DO_TRACKER: 'NO'
DO_GENESIS: 'NO'
SUPPORTED_RESOLUTIONS: ['C1152', 'C768', 'C384', 'C192', 'C96', 'C48']
COMINecmwf: /work/noaa/global/glopara/data/external_gempak/ecmwf
COMINnam: /work/noaa/global/glopara/data/external_gempak/nam
COMINukmet: /work/noaa/global/glopara/data/external_gempak/ukmet
AERO_INPUTS_DIR: /work2/noaa/global/wkolczyn/noscrub/global-workflow/gocart_emissions
1 change: 1 addition & 0 deletions workflow/hosts/s4.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,4 @@ ATARDIR: '${NOSCRUB}/archive_rotdir/${PSLOT}'
MAKE_NSSTBUFR: 'YES'
MAKE_ACFTBUFR: 'YES'
SUPPORTED_RESOLUTIONS: ['C384', 'C192', 'C96', 'C48']
AERO_INPUTS_DIR: /data/prod/glopara/gocart_emissions
1 change: 1 addition & 0 deletions workflow/hosts/wcoss2.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,4 @@ SUPPORTED_RESOLUTIONS: ['C1152', 'C768', 'C384', 'C192', 'C96', 'C48']
COMINecmwf: /lfs/h2/emc/global/noscrub/emc.global/data/external_gempak/ecmwf
COMINnam: /lfs/h2/emc/global/noscrub/emc.global/data/external_gempak/nam
COMINukmet: /lfs/h2/emc/global/noscrub/emc.global/data/external_gempak/ukmet
AERO_INPUTS_DIR: /lfs/h2/emc/global/noscrub/emc.global/data/gocart_emissions
Loading
Loading