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 esmf@8.4.1 and mapl@2.35.2 (replace existing versions in unified env) #333

Closed
climbfuji opened this issue Sep 2, 2022 · 16 comments · Fixed by #495
Closed

Add esmf@8.4.1 and mapl@2.35.2 (replace existing versions in unified env) #333

climbfuji opened this issue Sep 2, 2022 · 16 comments · Fixed by #495
Assignees

Comments

@climbfuji
Copy link
Collaborator

Please describe the package or library you would like to add to spack-stack.
See NOAA-EMC/hpc-stack#485 for more details.

What applications will be using this package or library?
UFS

Is there already a package or library in spack-stack that provides this, or related, functionality?
Earlier versions of mapl

Additional context
n/a

Will This Package be Needed in a NOAA Operational Application?
Yes

WCOSS System Software Request Checklist

See NOAA-EMC/hpc-stack#485 (if there is no checklist in hpc-stack, then let's ask the requester to add one).

@climbfuji climbfuji changed the title Yet another version of mapl ... add 2.23.1 (post release 1.1.0) Yet another version of esmf and mapl ... add esmf@8.4.0b08 and mapl@2.23.1 Sep 16, 2022
@climbfuji climbfuji changed the title Yet another version of esmf and mapl ... add esmf@8.4.0b08 and mapl@2.23.1 Yet another version of esmf and mapl ... add esmf@8.4.0 and mapl@2.23.1 Dec 1, 2022
@climbfuji climbfuji changed the title Yet another version of esmf and mapl ... add esmf@8.4.0 and mapl@2.23.1 Add esmf@8.4.1 and mapl@2.35.2 Mar 9, 2023
@climbfuji climbfuji changed the title Add esmf@8.4.1 and mapl@2.35.2 Add esmf@8.4.1 and mapl@2.35.2 (replace existing versions in unified env) Mar 9, 2023
@climbfuji
Copy link
Collaborator Author

@AlexanderRichert-NOAA @mathomp4 @junwang-noaa I started working on this, and quickly realized that we'd be better off waiting for @mathomp4 to finish his PR JCSDA/spack#174. I can add mapl 2.35.2 myself, but it means we'll need to solve conflicts later when merging JCSDA/spack#174. Further, newer mapl versions want fargparse, which is not in spack yet (but included in PR 174).

We have a pretty tight timeline for the next release. If @mathomp4 thinks that his PR for our spack fork is ready in the next two days (and won't break anything), then lets get it in. Otherwise we could try to copy the mapl and fargparse changes from this PR and deal with the conflicts later, or abandon the idea and stick with mapl 2.22 for this release. (JEDI doesn't need the new mapl functionality, we are fine with 2.22 and ESMF 8.3.0b09 or 8.4.1).

@climbfuji
Copy link
Collaborator Author

@AlexanderRichert-NOAA @mathomp4 @junwang-noaa I started working on this, and quickly realized that we'd be better off waiting for @mathomp4 to finish his PR NOAA-EMC/spack#174. I can add mapl 2.35.2 myself, but it means we'll need to solve conflicts later when merging NOAA-EMC/spack#174. Further, newer mapl versions want fargparse, which is not in spack yet (but included in PR 174).

We have a pretty tight timeline for the next release. If @mathomp4 thinks that his PR for our spack fork is ready in the next two days (and won't break anything), then lets get it in. Otherwise we could try to copy the mapl and fargparse changes from this PR and deal with the conflicts later, or abandon the idea and stick with mapl 2.22 for this release. (JEDI doesn't need the new mapl functionality, we are fine with 2.22 and ESMF 8.3.0b09 or 8.4.1).

Another option may be to add the missing variant to enable/disable fargparse from @mathomp4's PR and not worry about fargparse for this release. Then solve conflicts later when JCSDA/spack#174 is ready.

@climbfuji
Copy link
Collaborator Author

It looks like I am able to build mapl@2.35.2 by turning off the fargparse option. I'll create a draft PR to look at, if that seems to be a safer option than the big PR with all the GEOS packages a day or two before the code freeze, then we may go this route.

@AlexanderRichert-NOAA
Copy link
Collaborator

Using @mathomp4's draft MAPL package.py and the updated ESMF package.py, I can build the unified stack on hera and successfully build and run the latest UFS with the cpld_control_p8 case (all files match which is impressive!). The only further change was to remove +pio and add +parallelio for the esmf variants in common/packages.yaml.

@climbfuji Do you want me to do the PRs for this? If you're already deep into it then go ahead but otherwise I'm happy to make the changes (new mapl version+fargparse dep/variant, and esmf and mapl changes in common/packages.yaml).

@Hang-Lei-NOAA
Copy link
Collaborator

Hang-Lei-NOAA commented Mar 14, 2023 via email

@climbfuji
Copy link
Collaborator Author

climbfuji commented Mar 14, 2023 via email

@AlexanderRichert-NOAA
Copy link
Collaborator

@climbfuji Okay great, those look good to me as far as this issue is concerned. And yes, +pio will need to get removed in favor of the external pio. Also, can we please change netcdf-c to version 4.9.1 in the same PR? I haven't tested 4.9.0 myself, but apparently there have been problems with it at least w.r.t. to UFS.

@Hang-Lei-NOAA I can add +fismahigh to ufs-weather-model-static/spack.yaml (dap is already disabled, which I believe is what determines libxml2 inclusion).

@climbfuji
Copy link
Collaborator Author

climbfuji commented Mar 14, 2023 via email

@AlexanderRichert-NOAA
Copy link
Collaborator

It worked with 4.9.1 for me on hera just now... @Hang-Lei-NOAA @junwang-noaa which netcdf-c version did we end up landing on?

@Hang-Lei-NOAA
Copy link
Collaborator

Hang-Lei-NOAA commented Mar 15, 2023 via email

@climbfuji
Copy link
Collaborator Author

netcdf-c@4.9.2 was just released with several bug fixes that might be important or at least of interest to us ... https://github.com/Unidata/netcdf-c/releases/tag/v4.9.2 I really don't like updating to a new version so close cutting release branches, but we can always roll back to 4.9.1 if it's needed, and we did have issues with that version before.

Any strong objections trying that?

@Hang-Lei-NOAA
Copy link
Collaborator

Hang-Lei-NOAA commented Mar 15, 2023 via email

@climbfuji
Copy link
Collaborator Author

climbfuji commented Mar 15, 2023 via email

@AlexanderRichert-NOAA
Copy link
Collaborator

Compiled and ran UFS WM successfully on Hera with 4.9.2 using unified env, so between that and 4.9.0 I'd opt for 4.9.2.

@climbfuji
Copy link
Collaborator Author

Thanks @AlexanderRichert-NOAA ! I am trying that version this morning, too.

@mathomp4
Copy link
Collaborator

Note on the GEOS side (which of course isn't quite ready for spack-stack): Since we are a netCDF-Fortran shop, we'll probably stick with netCDF-C 4.9.0 for the near future. From the announcement:

Next up, the netCDF team is working on releases for the Fortran and C++ interfaces...

I always wait until I hear from the team that netCDF-Fortran is "good". I mean, I'm sure it does work, but I'm pretty conservative with netCDF. (Meanwhile, ESMF betas galore! 😄 )

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 a pull request may close this issue.

5 participants