-
Notifications
You must be signed in to change notification settings - Fork 6
Change default IO type from NETCDF4C to PNETCDF #325
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
base: develop
Are you sure you want to change the base?
Conversation
|
Testing:
|
|
Thanks very much, @amametjanov! This looks promising. |
|
@amametjanov, I've got 3 tests for this in the queue, one on Chrysalis and 2 on Frontier. But wait times seem to be a bit long both places. I'll keep you posted. |
|
To fix |
|
@amametjanov, maybe this will be fixed by E3SM-Project/scorpio#670 but what I'm seeing on Chrysalis with this branch is: The polaris output is available at: It seems like this won't be a short-term fix for Omega if a scoprio fix is needed, because that would mean:
It feels like we should look into whether there's some alternative way to address #323 in the next week or two. |
Update scorpio from v1.8.2 2025-Jul-14 to v1.9.0 2025-Nov-21. Also add fix for PnetCDF CDF5 types.
4d44424 to
e68388f
Compare
|
Xylar, please check with updated head of this branch to see if it fixes This branch updates the scorpio submodule ahead of E3SM/master's version, which is still on v1.8.2 2025-Jul-14. When scorpio gets update in E3SM/master (with v1.9.0 or later), E3SM/master merge to Omega/develop will subsume this branch's updates. |
|
Thanks, @amametjanov! I'll retest as soon as I can. |
xylar
left a comment
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.
I tested the omega_pr suite using the fix in E3SM-Project/polaris#442, pointing to this branch for the Omega build.
I was able to run successfully with both Intel and Gnu on Chrysalis. I discovered that I can't log in to either Aurora or Frontier at the moment. I'm trying on Perlmutter (CPU and GPU) next.
In the mean time, two small questions/comments.
| Filename: ocn.hifreq.$Y-$M | ||
| Mode: write | ||
| IfExists: append | ||
| IfExists: replace |
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.
I don't feel qualified to decide if this is a change we want or not. It seems potentially outside the scope of this particular PR even if we do.
| case IfExists::Fail: | ||
| PIOErr = PIOc_createfile(SysID, &FileID, &Format, Filename.c_str(), | ||
| NC_NOCLOBBER | InMode); | ||
| NC_NOCLOBBER | PIO_64BIT_DATA | InMode); |
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.
Here and elsewhere, what are the implications of this change if someone deliberately chooses a different IO format than the new default at runtime? It seems like something we might not want to be hard-coding in this way but maybe I don't understand the implications.
|
On Perlmutter-CPU (Both Intel and Gnu) and -GPU (Gnu-GPU), I'm seeing the same hanging behavior reported in E3SM-Project/polaris#396 as we had seen previously. It seems like maybe that behavior is unfortunately independent of this PIO problem. |
Change default IO type from NETCDF4C to PNETCDF
Checklist
Testingwith the following:have been run on and indicate that are all passing.
has passed, using the Polaris
e3sm_submodules/Omegabaseline-pfor both the baseline (Polarise3sm_submodules/Omega) and the PR build