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

EAMxx: support the new SCORPIO I/O type ADIOSC #6969

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

dqwu
Copy link
Contributor

@dqwu dqwu commented Feb 3, 2025

This PR updates the EAMxx-SCORPIO interface to support the new
PIO_IOTYPE_ADIOSC I/O type, enabling read/write functionality
for the ADIOS BP file format with both lossless and lossy
compression.

[BFB]

SCORPIO has introduced a new I/O type, PIO_IOTYPE_ADIOSC, which
enables reading and writing data in the ADIOS BP file format with
support for both lossless and lossy compression.

This update extends the EAMxx-SCORPIO interface to support the new
I/O type.
@dqwu dqwu added BFB PR leaves answers BFB SCORPIO The E3SM I/O library (derived from PIO) EAMxx PRs focused on capabilities for EAMxx labels Feb 3, 2025
@dqwu dqwu requested review from bartgol and jayeshkrishna February 3, 2025 20:48
@jayeshkrishna
Copy link
Contributor

@dqwu : Can you also mention in the comments the create_newcase command (& xmlchanges) of a case that does not work (support ADIOSC)?

@dqwu
Copy link
Contributor Author

dqwu commented Feb 4, 2025

@jayeshkrishna

This 3 scenarios do not need this PR.

  1. Non-scream output files with ADIOS (no compression) type: call "xmlchange PIO_TYPENAME=adios"
  2. Non-scream output files with ADIOSC (compression) type: call "xmlchange PIO_TYPENAME=adiosc"
  3. Scream output files with ADIOS (no compression) type: set "iotype: adios" in scream yaml files

This scenario needs this PR.
4. Scream output files with ADIOSC (compression) type: set "iotype: adiosc" in scream yaml files

@jayeshkrishna
Copy link
Contributor

@jayeshkrishna To be clear, 1 ~ 3 are already supported and this PR is required to support 4.

  1. Non-scream output files with ADIOS (no compression) type: call "xmlchange PIO_TYPENAME=adios"
  2. Non-scream output files with ADIOSC (compression) type: call "xmlchange PIO_TYPENAME=adiosc"
  3. Scream output files with ADIOS (no compression) type: set "iotype: adios" in scream yaml files
  4. Scream output files with ADIOSC (compression) type: set "iotype: adiosc" in scream yaml files

Can you highlight which ones work without the change vs which ones need this change (Do none of the adiosc cases work without this change?)? I wanted the comments to record why this change is needed (from CIME/user perspective)

@dqwu
Copy link
Contributor Author

dqwu commented Feb 4, 2025

@jayeshkrishna To be clear, 1 ~ 3 are already supported and this PR is required to support 4.

  1. Non-scream output files with ADIOS (no compression) type: call "xmlchange PIO_TYPENAME=adios"
  2. Non-scream output files with ADIOSC (compression) type: call "xmlchange PIO_TYPENAME=adiosc"
  3. Scream output files with ADIOS (no compression) type: set "iotype: adios" in scream yaml files
  4. Scream output files with ADIOSC (compression) type: set "iotype: adiosc" in scream yaml files

Can you highlight which ones work without the change vs which ones need this change (Do none of the adiosc cases work without this change?)? I wanted the comments to record why this change is needed (from CIME/user perspective)

1 to 3 work without the change and 4 needs this change.

@bartgol
Copy link
Contributor

bartgol commented Feb 5, 2025

@dqwu @jayeshkrishna just making sure we're good to merge this. I assume your convo above was just for the sake of documenting here on github?

@dqwu
Copy link
Contributor Author

dqwu commented Feb 5, 2025

@dqwu @jayeshkrishna just making sure we're good to merge this. I assume your convo above was just for the sake of documenting here on github?

I think so. @jayeshkrishna This PR can be merged to E3SM next, right?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BFB PR leaves answers BFB EAMxx PRs focused on capabilities for EAMxx SCORPIO The E3SM I/O library (derived from PIO)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants