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

Add CCPP suite and FASTER option to UFS build #2521

Merged
merged 6 commits into from
Apr 23, 2024

Conversation

guoqing-noaa
Copy link
Contributor

@guoqing-noaa guoqing-noaa commented Apr 22, 2024

Description

This PR updates related build scripts to (1) include the global-nest physics in the compilation step (2) be able to use the -DFASTER=ON compiling option through the "-f" command line switch.

Resolves #2520

Type of change

  • New feature (adds functionality)

Change characteristics

  • Is this a breaking change (a change in existing functionality)? NO
  • Does this change require a documentation update? NO (except for global-nest users)

How has this been tested?

  • Clone and build on Hera
  • Forecast-only on Hera

Checklist

  • Any dependent changes have been merged and published
  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • My changes generate no new warnings
  • New and existing tests pass with my changes
  • I have made corresponding changes to the documentation if necessary

CONTRIBUTORS:

@SamuelTrahanNOAA

@@ -184,6 +184,7 @@ export DO_AERO="NO"
export WAVE_CDUMP="" # When to include wave suite: gdas, gfs, or both
export DOBNDPNT_WAVE="NO"
export FRAC_GRID=".true."
export CCPP_SUITE="FV3_GFS_v17_p8_ugwpv1"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there a reason to put the CCPP_SUITE in config.base rather than config.ufs? config.base is not a catch-all for all user-configurable settings; this should only be done if it is needed by additional jobs that are not using config.ufs.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The only reason I have right now is that in many situations, one only need to modify one config file for new experiments.

I will remove this change. Thanks!

@@ -16,7 +16,7 @@ function _usage() {
Builds all of the global-workflow components by calling the individual build
scripts in sequence.

Usage: ${BASH_SOURCE[0]} [-a UFS_app][-c build_config][-d][-h][-j n][-v][-w]
Usage: ${BASH_SOURCE[0]} [-a UFS_app][-c build_config][-d][-h][-j n][-v][-w][-f]
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please maintain alphabetical order for the new option throughout this script.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure, thanks!

PDLIB="ON"

while getopts ":da:j:vw" option; do
while getopts ":da:j:vwf" option; do
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These should be in alphabetical order as well. I recognize the d was already out-of-order, so just put the f after the a: and I'll fix the rest of the order later.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sounds good. thanks!

sorc/build_ufs.sh Show resolved Hide resolved
@@ -35,6 +35,8 @@ Usage: ${BASH_SOURCE[0]} [-a UFS_app][-c build_config][-d][-h][-j n][-v][-w]
Execute all build scripts with -v option to turn on verbose where supported
-w:
Use structured wave grid
-f:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This should be moved up to be in alphabetical order as well.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done. Thanks!

@WalterKolczynski-NOAA WalterKolczynski-NOAA changed the title update build scripts to include the nest physics and an -f option to build the UFS model Add CCPP suite and add FASTER option to UFS compilation Apr 23, 2024
@WalterKolczynski-NOAA WalterKolczynski-NOAA changed the title Add CCPP suite and add FASTER option to UFS compilation Add CCPP suite and FASTER option to UFS compilation Apr 23, 2024
@WalterKolczynski-NOAA WalterKolczynski-NOAA changed the title Add CCPP suite and FASTER option to UFS compilation Add CCPP suite and FASTER option to UFS build Apr 23, 2024
sorc/build_all.sh Outdated Show resolved Hide resolved
case "${option}" in
d) BUILD_TYPE="Debug";;
a) APP="${OPTARG}";;
j) BUILD_JOBS="${OPTARG}";;
v) export BUILD_VERBOSE="YES";;
w) PDLIB="OFF";;
f) FASTER="ON";;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please place this after the a) option as well.

guoqing-noaa and others added 2 commits April 22, 2024 21:30
Co-authored-by: Walter Kolczynski - NOAA <Walter.Kolczynski@noaa.gov>
Copy link
Contributor

@WalterKolczynski-NOAA WalterKolczynski-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Conditionally approved pending successful completion of CI tests.

@WalterKolczynski-NOAA WalterKolczynski-NOAA self-assigned this Apr 23, 2024
@WalterKolczynski-NOAA WalterKolczynski-NOAA added the CI-Hera-Ready **CM use only** PR is ready for CI testing on Hera label Apr 23, 2024
@emcbot emcbot added CI-Hera-Building **Bot use only** CI testing is cloning/building on Hera CI-Hera-Running **Bot use only** CI testing on Hera for this PR is in-progress CI-Hera-Passed **Bot use only** CI testing on Hera for this PR has completed successfully and removed CI-Hera-Ready **CM use only** PR is ready for CI testing on Hera CI-Hera-Building **Bot use only** CI testing is cloning/building on Hera CI-Hera-Running **Bot use only** CI testing on Hera for this PR is in-progress labels Apr 23, 2024
@emcbot
Copy link

emcbot commented Apr 23, 2024

CI Passed Hera at
Built and ran in directory /scratch1/NCEPDEV/global/CI/2521

@WalterKolczynski-NOAA WalterKolczynski-NOAA merged commit d0e1cc8 into NOAA-EMC:develop Apr 23, 2024
9 of 10 checks passed
danholdaway added a commit to danholdaway/global-workflow that referenced this pull request Apr 23, 2024
* upstream/develop:
  Add CCPP suite and FASTER option to UFS build (NOAA-EMC#2521)
  New "atmanlfv3inc" Rocoto job (NOAA-EMC#2420)
  Hotfix to disable STALLED in CI as an error (NOAA-EMC#2523)
  Add restart on failure capability for the forecast executable (NOAA-EMC#2510)
  Update parm/transfer list files to match vetted GFSv16 set (NOAA-EMC#2517)
  Update gdas_gsibec_ver to 20240416 (NOAA-EMC#2497)
  Adding more cycles to gempak script gfs_meta_sa2.sh (NOAA-EMC#2518)
  Update gsi_enkf.sh hash to 457510c (NOAA-EMC#2514)
  Enable using the FV3_global_nest_v1 CCPP suite (NOAA-EMC#2512)
  CI Refactoring and STALLED case detection (NOAA-EMC#2488)
  Add C768 and C1152 S2SW test cases (NOAA-EMC#2509)
  Fix paths for refactored prepocnobs task (NOAA-EMC#2504)
@guoqing-noaa guoqing-noaa deleted the prDevelop branch April 23, 2024 18:01
@guoqing-noaa
Copy link
Contributor Author

Thanks, @WalterKolczynski-NOAA !

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
CI-Hera-Passed **Bot use only** CI testing on Hera for this PR has completed successfully
Projects
None yet
Development

Successfully merging this pull request may close these issues.

update build_ufs.sh to include the "FV3_global_fv3_nest1" physics and use -DFASTER=ON in the compilation
3 participants