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

Update srw_common and hashes of UFS_UTILS and UPP #266

Merged
merged 11 commits into from
Jun 9, 2022

Conversation

chan-hoo
Copy link
Collaborator

@chan-hoo chan-hoo commented May 20, 2022

DESCRIPTION OF CHANGES:

  • The hashes of UFS_UTILS and UPP are updated with the latest ones.
  • the module file srw_comm is updated with the latest modules.
  • Since the latest hash of the ufs weather model requires changes in the input namelists, it will be updated in a separate PR later. However, I confirmed that the latest hash of the ufs weather model was built successfully with srw_common in this PR on Orion and Hera.

TESTS CONDUCTED:

  • successfully built on Orion and Hera.
  • WE2E tests on Orion and Hera:
    grid_RRFS_CONUS_25km_ics_FV3GFS_lbcs_FV3GFS_suite_GFS_2017_gfdlmp_regional
    grid_RRFS_CONUS_25km_ics_FV3GFS_lbcs_FV3GFS_suite_GFS_v15p2
    grid_RRFS_CONUS_25km_ics_FV3GFS_lbcs_FV3GFS_suite_GFS_v16
    grid_RRFS_CONUS_25km_ics_FV3GFS_lbcs_RAP_suite_HRRR
    grid_RRFS_CONUS_3km_ics_FV3GFS_lbcs_FV3GFS_suite_GFS_v15_thompson_mynn_lam3km
    grid_RRFS_CONUScompact_25km_ics_HRRR_lbcs_HRRR_suite_RRFS_v1beta
    grid_RRFS_CONUScompact_25km_ics_HRRR_lbcs_RAP_suite_RRFS_v1alpha

DEPENDENCIES:

@mkavulich mkavulich added Tested on Hera Tested successfully on Hera machine Needs Cheyenne test Testing needs to be run on Cheyenne machine labels May 20, 2022
@mkavulich
Copy link
Collaborator

Testing on Cheyenne, not sure if all the new modules will be available yet.

@mkavulich mkavulich added the Tested on Orion Tests ran successfully on MSU Orion machine label May 20, 2022
@mkavulich
Copy link
Collaborator

Build tests did indeed fail on Cheyenne. I believe this PR will need to incorporate some of Ed's PR (#250), but all the library combinations I tried failed in some way. I also opened an issue in the hpc-stack repository a while back (NOAA-EMC/hpc-stack#439) but it has not yet received a satisfactory resolution.

@JeffBeck-NOAA
Copy link
Collaborator

JeffBeck-NOAA commented May 22, 2022

Thanks, @chan-hoo for fixing the problem with nccmp on Jet. I'm now getting the following error when building UFS_UTILS.

CMake Error at tests/CMakeLists.txt:21 (message):
  Could not download gfs.v16.sfc.history.nc
Call Stack (most recent call first):
  tests/chgres_cube/CMakeLists.txt:16 (PULL_DATA)

-- Configuring incomplete, errors occurred!
See also "/mnt/lfs4/BMC/wrfruc/beck/ufs-srweather-app/build/src/UFS_UTILS/src/UFS_UTILS-build/CMakeFiles/CMakeOutput.log".
make[2]: *** [src/UFS_UTILS/src/UFS_UTILS-stamp/UFS_UTILS-configure] Error 1
make[1]: *** [src/CMakeFiles/UFS_UTILS.dir/all] Error 2

In UFS_UTILS/tests/chgres_cube/CMakeLists.txt, I see this:

# This function is used to download unit test data.
# It takes two arguments, the URL and the file to
# be downloaded.

function(PULL_DATA THE_URL THE_FILE)
  if(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/data/${THE_FILE}")
    file(DOWNLOAD
      ${THE_URL}/${THE_FILE}
      ${CMAKE_CURRENT_BINARY_DIR}/data/${THE_FILE}
      SHOW_PROGRESS
      STATUS status
      INACTIVITY_TIMEOUT 30
      )
    list(GET status 0 status_num)
    if(NOT status_num EQUAL 0 OR NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/data/${THE_FILE}")
      message(FATAL_ERROR "Could not download ${THE_FILE}")

@GeorgeGayno-NOAA, any idea why the download of gfs.v16.sfc.history.nc would fail on Jet?

@GeorgeGayno-NOAA
Copy link

Thanks, @chan-hoo for fixing the problem with nccmp on Jet. I'm now getting the following error when building UFS_UTILS.

CMake Error at tests/CMakeLists.txt:21 (message):
  Could not download gfs.v16.sfc.history.nc
Call Stack (most recent call first):
  tests/chgres_cube/CMakeLists.txt:16 (PULL_DATA)

-- Configuring incomplete, errors occurred!
See also "/mnt/lfs4/BMC/wrfruc/beck/ufs-srweather-app/build/src/UFS_UTILS/src/UFS_UTILS-build/CMakeFiles/CMakeOutput.log".
make[2]: *** [src/UFS_UTILS/src/UFS_UTILS-stamp/UFS_UTILS-configure] Error 1
make[1]: *** [src/CMakeFiles/UFS_UTILS.dir/all] Error 2

In UFS_UTILS/tests/chgres_cube/CMakeLists.txt, I see this:

# This function is used to download unit test data.
# It takes two arguments, the URL and the file to
# be downloaded.

function(PULL_DATA THE_URL THE_FILE)
  if(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/data/${THE_FILE}")
    file(DOWNLOAD
      ${THE_URL}/${THE_FILE}
      ${CMAKE_CURRENT_BINARY_DIR}/data/${THE_FILE}
      SHOW_PROGRESS
      STATUS status
      INACTIVITY_TIMEOUT 30
      )
    list(GET status 0 status_num)
    if(NOT status_num EQUAL 0 OR NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/data/${THE_FILE}")
      message(FATAL_ERROR "Could not download ${THE_FILE}")

@GeorgeGayno-NOAA, any idea why the download of gfs.v16.sfc.history.nc would fail on Jet?

The download of unit test data was made part of UFS_UTILS build system a few month's ago. See ufs-community/UFS_UTILS#619 for more details. Jet is behind a firewall and can't access the EMC ftp site. So to build on that machine you must set this CMake flag as follows: -DBUILD_TESTING=OFF. If you need to build and run the unit tests locally, you will need to use Hera or Orion.

@chan-hoo
Copy link
Collaborator Author

@GeorgeGayno-NOAA, thank you for this info. @JeffBeck-NOAA, I'll add the flag to devbuild.sh soon.

@JeffBeck-NOAA
Copy link
Collaborator

Thanks, @GeorgeGayno-NOAA! @chan-hoo, I'll test again as soon as devbuild.sh is updated. Thanks!

@chan-hoo
Copy link
Collaborator Author

@JeffBeck-NOAA, I changed 'src/CMakeLists.txt' directly because we don't need the unit test for UFS_UTILS in UFS SRW App. Can you test it again?

@mkavulich
Copy link
Collaborator

@chan-hoo I am tagging @mark-a-potts and @EdwardSnyder-NOAA RE: Cheyenne build problems. I am out of the loop on the status of the new library builds on Cheyenne.

@mark-a-potts
Copy link
Collaborator

Do all the new modules exist on the Tier-1 platforms? EPIC can install any that are missing on Cheyenne, but we don't currently control the installation on the other machines.

@chan-hoo
Copy link
Collaborator Author

@mark-a-potts, I've tested it on Hera and Orion successfully, and I think @JeffBeck-NOAA is testing it on Jet. WCOSS will be away in June, so we don't need to worry about wcoss_dell_p3. I don't have access to other machines. I updated the modules for Cheyenne and other machines on the basis of ufs_common in the ufs-weather-model. Can you test it on Cheyenne?

@mark-a-potts mark-a-potts added the run_ci Launches CI/CD pipeline via jenkins label May 23, 2022
@JeffBeck-NOAA
Copy link
Collaborator

JeffBeck-NOAA commented May 23, 2022

@chan-hoo, the build on Jet now completes successfully. I was able to get the GST to run with the following changes (similar to what we had to do on Hera recently):

In ufs-srweather-app/modulefiles/wflow_jet (change top to bottom)

module use -a /contrib/miniconda3/modulefiles
module load miniconda3

module use /contrib/miniconda3/modulefiles
module load miniconda3/4.5.12

In regional_workflow/modulefiles/tasks/jet/miniconda_regional_workflow (change top to bottom):

module use -a /contrib/miniconda3/modulefiles
module load miniconda3

module use /contrib/miniconda3/modulefiles
module load miniconda3/4.5.12

@chan-hoo
Copy link
Collaborator Author

@JeffBeck-NOAA, thank you for testing it. I've updated the scripts for Jet.

@chan-hoo chan-hoo added the Tested on Jet Successfully tested on Jet machine label May 23, 2022
@chan-hoo chan-hoo mentioned this pull request May 24, 2022
@jkbk2004
Copy link
Collaborator

@mkavulich @chan-hoo on cheyenne, ufs-wm currently uses: module use /glade/work/epicufsrt/GMTB/tools/intel/2022.1/hpc-stack-v1.2.0_6eb6/modulefiles/stack and /glade/work/epicufsrt/GMTB/tools/gnu/10.1.0/hpc-stack-v1.2.0/modulefiles/stack

@chan-hoo
Copy link
Collaborator Author

chan-hoo commented Jun 1, 2022

@jkbk2004, as you can see, this PR updates the paths to the hpc-stack on Cheyenne with the ones you pointed above. Can you test this PR on Cheyenne?

@chan-hoo chan-hoo added Tested on Cheyenne Successfully tested on Cheyenne machine and removed testing on Cheyenne Needs Cheyenne test Testing needs to be run on Cheyenne machine labels Jun 9, 2022
@chan-hoo chan-hoo merged commit 8e06fea into ufs-community:develop Jun 9, 2022
@chan-hoo chan-hoo deleted the feature/update_hash branch June 10, 2022 11:20
christinaholtNOAA pushed a commit to christinaholtNOAA/ufs-srweather-app that referenced this pull request Nov 5, 2024
A full integration of uwtools for the make_ics and make_lbcs tasks.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
run_ci Launches CI/CD pipeline via jenkins Tested on Cheyenne Successfully tested on Cheyenne machine Tested on Hera Tested successfully on Hera machine Tested on Jet Successfully tested on Jet machine Tested on Orion Tests ran successfully on MSU Orion machine
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants