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 the gdas.cd hash and enable GDASApp to run on WCOSS2 #3220

Draft
wants to merge 3 commits into
base: develop
Choose a base branch
from

Conversation

RussTreadon-NOAA
Copy link
Contributor

Description

This PR does the following:

  1. update the sorc/gdas.cd hash to bring new GDASApp functionality into g-w
  2. update env/WCOSS2.env
  3. update the WCOSS2 section of ush/module-setup.sh

The change to WCOSS2.env is due to changes introduced during the fall 2024 WCOSS2 upgrade. The change to module-setup.sh is required when using spack-stack on WCOSS2.

Resolves #3219
Resolves #3100

Type of change

  • Maintenance (update gdas.cd hash)

Change characteristics

  • Is this a breaking change (a change in existing functionality)? NO
  • Does this change require a documentation update? NO
  • Does this change require an update to any of the following submodules? YES
    • GDAS - this PR points at the updated sorc/gdas.cd hash. No PRs are pending.

How has this been tested?

  • Clone and build on WCOSS2, Hera, Hercules, and Orion
  • Run g-w CI on WCOSS2, Hera, Hercules, and Orion

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
  • New and existing tests pass with my changes

@RussTreadon-NOAA
Copy link
Contributor Author

This PR is opened in draft mode until g-w CI has been run on WCOSS2, Hera, Hercules, and Orion.

The g-w team is invited to review and comment on changes to env/WCOSS2.env and ush/module-setup.sh. The changes in env/WCOSS2.env originate from the discussion in WCOSS Ticket#2024111410000051.

@aerorahul
Copy link
Contributor

No issues here with the hash update.
I am not sure we are cleared to use spack-stack on WCOSS2 for regular development. The installed stack was for demonstration and testing purposes for NCO staff.

Comment on lines +16 to +19
# Add path to GDASApp libraries
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${HOMEgfs}/sorc/gdas.cd/build/lib"
export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/opt/cray/pe/mpich/8.1.19/ofi/intel/19.0/lib"

Copy link
Contributor

Choose a reason for hiding this comment

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

This is fine for now, but will not be acceptable for implementation. I hope there is a more robust solution than this by that time.

More importantly, this has an impact on every executable in every job -- not just GDASApp executables.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

I completely agree. I strongly dislike these two lines. They are temporary patches to allow GFS v17 testing and development to continue on WCOSS2.

The line

export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${HOMEgfs}/sorc/gdas.cd/build/lib"

was added because craype/2.7.17 adds

-static-libgcc -static-libstdc++ -Bstatic -lstdc++ -Bdynamic -lm -lpthread

to the ftn command. GDASApp executables failed because they could not find JEDI libraries. Might the addition of a GDASApp install option (something we must have) resolve this problem?

Another concern with the added ftn options is the following warning found in build_gdas.log

icpc: warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance
ifort: warning #10315: specifying -lm before files may supersede the Intel(R) math library and affect performance

It would be unfortunate if default compiler options resulted in degraded code performance.

The line

export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:/opt/cray/pe/mpich/8.1.19/ofi/intel/19.0/lib"

was recommended by GDIT. GDASApp testing identified inconsistencies in across system modules. Some GDASApp executables failed with undefined symbol messages for mpi routines. GDIT is working on a solution.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Update sorc/gdas.cd hash Unable to build GDASApp on Cactus following the system upgrade
2 participants