-
Notifications
You must be signed in to change notification settings - Fork 110
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 Hercules Support #880
Add Hercules Support #880
Conversation
@GeorgeGayno-NOAA I have completed regression tests for this branch on Hercules against the Orion baseline. The only tests that failed belonged to If you are happy with them, then could I ask that the new baseline and fix files be placed in |
#----------------------------------------------------------------------------- | ||
# Initialize C96 using spectral GFS sigio/sfcio files. | ||
#----------------------------------------------------------------------------- | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This test almost timed out for me. Can you boost the wall clock time by 5 minutes?
This test runs 5 minutes longer on Hercules compared to Orion. The slow down is in the read of the input atmospheric file. That file contains spectral coefficients that are converted to grid point space using the SP library. Using threads speeds up this conversion. In my experience, when this test runs slow it is because the SP library was not compiled with threads. May want to alert the libraries team.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Noted, thanks George.
@AlexanderRichert-NOAA would you be able to verify if the SP library was built with threading in spack-stack/1.5.0 on Hercules?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FYI Hercules is offline today for maintenance and I am off tomorrow. I will return to this on Monday.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sorry I missed this-- judging by the output at /work/noaa/epic/role-epic/spack-stack/hercules/spack-stack-1.5.0/envs/unified-env/install/intel/2021.9.0/sp-2.3.3-f4hmlri/.spack/spack-build-out.txt, it appears it was built with openmp support (-DOPENMP=ON, and the -DOPENMP definition is in the compiler calls).
…ls into feature/hercules
@AlexanderRichert-NOAA I am seeing some odd behavior from spack during CI concretization. First, I received an error from spack that
I tried the suggestion and changed to
Do you have any suggestions on how to resolve this? |
Would it work to upgrade sp to 2.5.0 in ci/spack.yaml? Or does it need to be 2.3.3? |
@AlexanderRichert-NOAA I will give that a try. Thanks. |
Looks like that worked. Thanks again @AlexanderRichert-NOAA. |
@GeorgeGayno-NOAA I have rerun the regression tests on Hercules against the baseline. A couple of issues were noted:
Would you mind taking a look at the Lastly, I have marked this PR ready for review now that the CI issues have been resolved. |
Sorry, I just added the baseline data for this test. Try again.
Yes, I can take a look at that test.
|
Here are the results of the
|
These differences are small and don't indicate a problem with the port. First, the number of points that have non-zero differences is a very small part of the total (each tile has 99x96x150 - or 1.3 million - points). The 'zh' differences appear to be 'large' but the differences are largest near the top of the atmosphere, where 'zh' is on order of 520,000 meters. So, these differences are relatively small. The |
Great, thanks for checking @GeorgeGayno-NOAA and for pushing the baselines to an official location. I just did one more sweep of my changes and cleaned up a little on top of your suggested |
No, we can just run the testing on Hercules. However, I will do a quick check to make sure it compiles on all machines. |
DESCRIPTION OF CHANGES:
This ports the UFS_Utils repository to Hercules, including regression tests.
TESTS CONDUCTED:
If there are changes to the build or source code, the tests below must be conducted. Contact a repository manager if you need assistance.
Regression test baseline data was copied from Orion. All tests passed except all
cpld_gridgen
tests and somechgres_cube
tests. All differences from the Orion baseline were small and did not indicate a problem with the port to Hercules. New baseline will be created for Hercules.DOCUMENTATION:
Updated documentation to include Hercules in the list of supported tier-1 platforms.
ISSUE:
Fixes #878
CONTRIBUTORS:
@BinLiu-NOAA @BijuThomas-NOAA