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

Refactor gridded wave post #3014

Open
wants to merge 28 commits into
base: develop
Choose a base branch
from

Conversation

AntonMFernando-NOAA
Copy link
Contributor

Description

The gridded wave post (wavepostsbs) script currently loops over all forecast hours and acts as its own post manager. Other component post and product scripts operate on one forecast time. This PR will update the wave post to match other components, that creates a bunch of short jobs instead of one long job (per member).
Resolves #2290

Type of change

  • Bug fix (fixes something broken)
  • New feature (adds functionality)

Change characteristics

  • Is this a breaking change (a change in existing functionality)? NO
  • Does this change require a documentation update? NO
  • Does this change require an update to any of the following submodules? NO

How has this been tested?

  • Run CI tests in HERA, ORION, and HERCULES

Checklist

  • Gridded wave post scripts that process only one forecast hour specified by the workflow manager (rocoto/ecflow)
  • Rocoto workflow updated to create the corresponding tasks for the new paradigm for both GFS and GEFS
  • Output identical to current system for both GFS and GEFS

@AntonMFernando-NOAA
Copy link
Contributor Author

AntonMFernando-NOAA commented Oct 21, 2024

@WalterKolczynski-NOAA I think this PR is ready to review. However, I don't know much about editing the exgfs_wave_post_gridded_sbs.sh script that produces various files. Need some help with that. CI test in HERCULES passed.

@JessicaMeixner-NOAA
Copy link
Contributor

@AntonMFernando-NOAA do you have a test case with develop and then a test case with this branch?

@sbanihash
Copy link
Contributor

@MatthewMasarik-NOAA , Since you are working on this script (scripts/exgfs_wave_post_gridded_sbs.sh) related to the GFS ops support, would you please take a look at the changes and check if this change would possibly solve the ops failure issue as well?

@MatthewMasarik-NOAA
Copy link

@MatthewMasarik-NOAA , Since you are working on this script (scripts/exgfs_wave_post_gridded_sbs.sh) related to the GFS ops support, would you please take a look at the changes and check if this change would possibly solve the ops failure issue as well?

Here is the branch started: https://github.com/MatthewMasarik-NOAA/global-workflow/tree/fix/wave-post. The last commit on it may be critical in addressing the post failure. Refactoring this loop was the longer term goal.

@AntonMFernando-NOAA
Copy link
Contributor Author

AntonMFernando-NOAA commented Oct 21, 2024

@AntonMFernando-NOAA do you have a test case with develop and then a test case with this branch?
@JessicaMeixner-NOAA Yes. Did not run a test case with develop recently. The one I have is one week old. Tests are run on HERCULES.
with develop - /work2/noaa/global/antonf/RUNTESTS/COMROOT/gefs_ht_dis
with current branch - /work2/noaa/global/antonf/RUNTESTS/COMROOT/gefs1

@MatthewMasarik-NOAA
Copy link

MatthewMasarik-NOAA commented Oct 21, 2024

@MatthewMasarik-NOAA , Since you are working on this script (scripts/exgfs_wave_post_gridded_sbs.sh) related to the GFS ops support, would you please take a look at the changes and check if this change would possibly solve the ops failure issue as well?

@sbanihash I can't say how the changes to that script made here would change the overall program execution. I think the length and complexity of the main loop make it difficult to reason about it by inspection. That is why I thought refactoring was a good direction.

@JessicaMeixner-NOAA
Copy link
Contributor

@AntonMFernando-NOAA - Okay I can't go into your directory b/c of permissions, but essentially you are going to want to make sure you still have the same number of files in the gridded wave post output and that the files are the same before and after your changes.

Also, while this breaks up the job into multiple parts - which is awesome! - we'll likely have other parts of this code that have "waiting" that likely need to be removed. That will require additional time that I do not have - but hopefully @sbanihash and @MatthewMasarik-NOAA can review that sooner than I'll be able to get to it.

@KateFriedman-NOAA
Copy link
Member

@AntonMFernando-NOAA please sync your branch with develop and resolve any remaining conflicts, thanks!

@NeilBarton-NOAA
Copy link
Contributor

I'm concerned about rocoto not being able to handle the additional tasks for long forecasts. Maybe the merge should be delayed until a rocoto workaround is merged.

@AntonMFernando-NOAA
Copy link
Contributor Author

AntonMFernando-NOAA commented Oct 22, 2024

@AntonMFernando-NOAA - Okay I can't go into your directory b/c of permissions, but essentially you are going to want to make sure you still have the same number of files in the gridded wave post output and that the files are the same before and after your changes.

Also, while this breaks up the job into multiple parts - which is awesome! - we'll likely have other parts of this code that have "waiting" that likely need to be removed. That will require additional time that I do not have - but hopefully @sbanihash and @MatthewMasarik-NOAA can review that sooner than I'll be able to get to it.

@JessicaMeixner-NOAA Did a diff check between develop and the current branch. The output can be found at /work/noaa/global/antonf/archive_rotdir/diff_wave_dev.txt.

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 this pull request may close these issues.

Refactor gridded wave post to match other components
6 participants