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

Various version updates for spack-stack-1.5.0 (parallelio, fms, met, metplus, eckit, fckit, fiat, ecmwf-atlas, scotch), set boost C++ std to C++-17 #722

Merged
merged 16 commits into from
Aug 23, 2023

Conversation

climbfuji
Copy link
Collaborator

@climbfuji climbfuji commented Aug 18, 2023

Note - to be merged as merge commit, not as squashed commit

I made sure that each commit was for a specific package only. Merging this as a merge commit allows us to identify the individual commits.

Summary

Various version updates for spack-stack release 1.5.0 (all separate commits):

  • Update parallelio to 2.5.10 in configs/common/packages.yaml and configs/containers/README.md
  • Update fms to 2023.02 in configs/common/packages.yaml and configs/containers/README.md (in the latter case for UFS only for now, before JEDI can use something else than fms@release-jcsda, several PRs need to be merged).
  • Note that this does not make fms@2023.02 the default version for ufs-weather-model-env, ufs-srw-app-env and jedi-ufs-env, because fms@2023.01 is hardcoded in these virtual packages. Therefore, I added fms@2023.02 manually to the unified-dev and skykab-dev templates for now. This led to duplicate packages being concretized. I found that by adding all versions of fms and crtm explicitly in the skylab-dev and unified-dev specs, these duplicates could be avoided (a spack concretizer bug?)
  • Update default versions for met and metplus in configs/common/packages.yaml
  • Update default versions for eckit, fckit, fiat, ecmwf-atlas in configs/common/packages.yaml and configs/containers/README.md
  • Update default versions for scotch in configs/common/packages.yaml

Testing

  • Testing on Dom's macOS M1/apple-clang@13.1.6/openmpi@4.1.5 with JEDI/Skylab:
    • jedi-bundle develop builds, there are a few test failures that are summarized here (mostly reference value mismatches)
    • JEDI Skylab experiments with jedi-bundle:
      • Experiment id: 1dda57 / Input YAML file: qg-fullDA.yaml
      • Experiment id: 7d1173 / Input YAML file: l95-fullDA.yaml
      • Experiment id: 19e55b and 50f39d / Input YAML file: gfs-3dfgat-c12.yaml
      • Experiment id: 271a6a / Input YAML file: skylab-atm-land-small.yaml
    • ufs-bundle builds, and the usual UFS tests run (fv3jedi_test_tier1_model_ufs_warmstart, fv3jedi_test_tier1_forecast_ufs_warmstart)
  • Testing on AWS Parallel Cluster hpc6a.48xlarge (Ubuntu 20/intel@2021.6.0/intel-oneapi-mpi) with JEDI/Skylab:
    • jedi-bundle develop builds, ctests still running
    • Still todo run some Skylab experiments (not necessary to run all of them)
    • JEDI Skylab experiments with jedi-bundle:
      • Experiment id: 83de8c / Input YAML file: qg-fullDA.yaml
      • Experiment id: 9a983a / Input YAML file: l95-fullDA.yaml
      • Experiment id: 24ef0e / Input YAML file: skylab-atm-land-small.yaml
    • ufs-bundle builds, and the usual UFS tests run (fv3jedi_test_tier1_model_ufs_warmstart, fv3jedi_test_tier1_forecast_ufs_warmstart)
    • @cmgas Is there a way to run the Skylab UFS tests on this parallel cluster?

Applications affected

All.

Systems affected

All.

Dependencies

Issue(s) addressed

Closes #706
Closes #709
Closes #591
Closes #727
Closes #646
Closes https://github.com/JCSDA-internal/skylab/issues/65
Closes #686
Closes #627
Working towards #702 (need to remove ecmwf-atlas from automatically loaded modules for jedi-base-env module, but still build in unified-dev/skylab-dev templates)

Checklist

  • This PR addresses one issue/problem/enhancement, or has a very good reason for not doing so.
  • These changes have been tested on the affected systems and applications.
  • All dependency PRs/issues have been resolved and this PR can be merged.

@climbfuji climbfuji self-assigned this Aug 18, 2023
@climbfuji climbfuji added the INFRA JEDI Infrastructure label Aug 18, 2023
@climbfuji climbfuji changed the title WIP: various version updates for spack-stack-1.5.0 (parallelio, add more here) WIP: various version updates for spack-stack-1.5.0 (parallelio, fms, add more here) Aug 18, 2023
@climbfuji climbfuji changed the title WIP: various version updates for spack-stack-1.5.0 (parallelio, fms, add more here) WIP: various version updates for spack-stack-1.5.0 (parallelio, fms, ip, add more here) Aug 18, 2023
@climbfuji climbfuji changed the title WIP: various version updates for spack-stack-1.5.0 (parallelio, fms, ip, add more here) WIP: various version updates for spack-stack-1.5.0 (parallelio, fms, add more here) Aug 18, 2023
@climbfuji climbfuji force-pushed the feature/version_updates_20230817 branch from 41f8ed5 to 846a622 Compare August 18, 2023 21:08
@climbfuji climbfuji changed the title WIP: various version updates for spack-stack-1.5.0 (parallelio, fms, add more here) WIP: various version updates for spack-stack-1.5.0 (parallelio, fms, met, metplus, add more here) Aug 18, 2023
…figs/sites/aws-pcluster/README.md, configs/sites/aws-pcluster/packages.yaml
@climbfuji climbfuji changed the title WIP: various version updates for spack-stack-1.5.0 (parallelio, fms, met, metplus, add more here) WIP: various version updates for spack-stack-1.5.0 (parallelio, fms, met, metplus, add more here), set boost C++ std to C++-17 Aug 21, 2023
@climbfuji climbfuji changed the title WIP: various version updates for spack-stack-1.5.0 (parallelio, fms, met, metplus, add more here), set boost C++ std to C++-17 Various version updates for spack-stack-1.5.0 (parallelio, fms, met, metplus, add more here), set boost C++ std to C++-17 Aug 21, 2023
@climbfuji climbfuji changed the title Various version updates for spack-stack-1.5.0 (parallelio, fms, met, metplus, add more here), set boost C++ std to C++-17 Various version updates for spack-stack-1.5.0 (parallelio, fms, met, metplus, eckit, fckit, fiat, ecmwf-atlas, add more here), set boost C++ std to C++-17 Aug 21, 2023
@climbfuji climbfuji changed the title Various version updates for spack-stack-1.5.0 (parallelio, fms, met, metplus, eckit, fckit, fiat, ecmwf-atlas, add more here), set boost C++ std to C++-17 Various version updates for spack-stack-1.5.0 (parallelio, fms, met, metplus, eckit, fckit, fiat, ecmwf-atlas, scotch), set boost C++ std to C++-17 Aug 21, 2023
@climbfuji climbfuji mentioned this pull request Aug 21, 2023
…ack.yaml and configs/templates/unified-dev/spack.yaml
@climbfuji climbfuji marked this pull request as ready for review August 22, 2023 22:43
Copy link
Contributor

@fmahebert fmahebert left a comment

Choose a reason for hiding this comment

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

Not an expert review; the ECMWF repo versions look good to me though.

# Various fms tags (list all to avoid duplicate packages)
- fms@release-jcsda
- fms@2023.01
- fms@2023.02
Copy link
Collaborator

Choose a reason for hiding this comment

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

3 versions of fms moving forward? just wanted to double check. i saw this ufs-community/ufs-weather-model#1874, so assuming we retain 2023.01 for a while until all apps move to 2023.02?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Also, re: #627, @climbfuji would it make sense to tie these to specific metapackages? If it already concretizes correctly then no worries, it's mostly an aesthetic thing for me.

#version: ['2023.01']
#variants: precision=32,64 +quad_precision +gfs_phys +openmp +pic constants=GFS build_type=Release
version: ['2023.02']
variants: precision=32,64 +quad_precision +gfs_phys +openmp +pic constants=GFS build_type=Release +use_fmsio
Copy link
Collaborator

Choose a reason for hiding this comment

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

jun's comment is addressed via the use_fmsio variant here, correct? (i.e.: ufs-community/ufs-weather-model#1874 (comment)).

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I think Jun is hoping to not having to use the deprecated fms_io component, but as she mentioned there is work that needs to be done. JEDI also needs fms_io. By enabling it (for now), we can simplify and speed up the transition to that version and abandon the old release-jcsda release.

@climbfuji
Copy link
Collaborator Author

climbfuji commented Aug 23, 2023 via email

@ulmononian
Copy link
Collaborator

Yes, we need @.*** for the reasons you described and @.*** for JEDI. @.*** is for testing with and migration of both the UFS and JEDI to that version in the next quarter (it contains bug fixes from the older release-jcsda that are not in 2023.01). The good thing about this version is that once it works for both UFS and JEDI, we can stop using different versions of FMS altogether and just use 2023.02+ in the future.

On Aug 23, 2023, at 11:03 AM, Cameron Book @.***> wrote: @ulmononian commented on this pull request. In configs/templates/unified-dev/spack.yaml <#722 (comment)>: > @@ -25,11 +25,13 @@ spack: #- upp-env #- ww3-env - # Additional esmf/mapl tags - #- @.~debug+external-parallelio - #- @.~debug @.~debug+external-parallelio + # Various fms tags (list all to avoid duplicate packages) + - @. + - @. + - @. 3 versions of fms moving forward? just wanted to double check. i saw this ufs-community/ufs-weather-model#1874 <ufs-community/ufs-weather-model#1874>, so assuming we retain 2023.01 for a while until all apps move to 2023.02? — Reply to this email directly, view it on GitHub <#722 (review)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB5C2RNKXJA67T63IZGBBZTXWYZWPANCNFSM6AAAAAA3U5FOWA. You are receiving this because you were assigned.

ok -- what a bright future!

variants: +python +grib2
metplus:
version: ['5.0.1']
version: ['5.1.0']
Copy link
Collaborator

Choose a reason for hiding this comment

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

since i think the srw is going to move toward using met/metplus modulefiles (rather than how it is currently done via path setting in the machine files), could we add met/metplus to the ufs-srw-app-env package.py?

@climbfuji
Copy link
Collaborator Author

climbfuji commented Aug 23, 2023 via email

@ulmononian
Copy link
Collaborator

Should I create an issue (similar to the “update ufs-weather-model-static template”) for this? I assume more updates are needed than just the met/metplus addition.

On Aug 23, 2023, at 11:23 AM, Cameron Book @.***> wrote: @ulmononian commented on this pull request. In configs/common/packages.yaml <#722 (comment)>: > variants: +python +grib2 metplus: - version: ['5.0.1'] + version: ['5.1.0'] since i think the srw is going to move toward using met/metplus modulefiles (rather than how it is currently done via path setting in the machine files), could we add met/metplus to the ufs-srw-app-env package.py? — Reply to this email directly, view it on GitHub <#722 (review)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AB5C2RLLPRJAPZUKHQDYS5TXWY4C5ANCNFSM6AAAAAA3U5FOWA. You are receiving this because you were assigned.

sure. the srw template and package.py should both probably receive some upgrades.

@climbfuji
Copy link
Collaborator Author

CI tests passed after the submodule pointer for spack following the merge of JCSDA/spack#304. Just waiting for the skylab-atm-land experiment to complete on AWS Parallel Cluster before merging.

@climbfuji
Copy link
Collaborator Author

skylab-atm-land ran successfully. I think it's better to wait for @AlexanderRichert-NOAA's approval before merging.

# Various fms tags (list all to avoid duplicate packages)
- fms@release-jcsda
- fms@2023.01
- fms@2023.02
Copy link
Collaborator

Choose a reason for hiding this comment

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

Also, re: #627, @climbfuji would it make sense to tie these to specific metapackages? If it already concretizes correctly then no worries, it's mostly an aesthetic thing for me.

@climbfuji
Copy link
Collaborator Author

@AlexanderRichert-NOAA It all concretizes ok, but if there is a better way I am happy to do that in a follow-up PR. I assume you mean something like

- ufs-weather-model-env ^ fms@2023.01
- jedi-fv3-env ^ fms@release-jcsda

but if yes it's not clear to me how to add the additional fms@2023.02 for testing/transitioning during the next quarter?

@climbfuji climbfuji merged commit 1947628 into JCSDA:develop Aug 23, 2023
@climbfuji climbfuji deleted the feature/version_updates_20230817 branch August 23, 2023 19:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
INFRA JEDI Infrastructure
Projects
No open projects
5 participants