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

feature/global_ens_priorities_456 #332

Conversation

malloryprow
Copy link
Contributor

@malloryprow malloryprow commented Nov 2, 2023

Since global_ens is such a large component and I am not the developer of this code, we are going to iteratively work through this PR, so the usual PR information will be found in the comments for each iteration.

This PR can be merged once all iterations are completed.

  • Iteration 1: global_ens wave: prep, stats, plots
  • Iteration 2: global_ens atmos & headline: prep
  • Iteration 3: global_ens atmos & headline: stats

Recommend testing for the reviewer(s) to perform, including the location of input datasets, and any additional instructions:

Set-up

  1. Clone my fork and checkout branch feature/global_ens_priorities_456
  2. cd sorc
  3. ./build-fix-link.sh
  4. ./build.sh
  • Please complete this pull request review by 11/09/2023.

Pull Request Checklist

  • Review the source issue metadata (required labels, projects, and milestone).

  • Complete the PR description above.

  • Ensure the PR title matches the feature branch name.

  • Check the following:

  • Instructions provided on how to run

  • Developer's name is replaced by ${user} where necessary throughout the code

  • Check that the ecf file has all the proper definitions of variables

  • Check that the jobs file has all the proper settings of COMIN and COMOUT and other input variables

  • Check to see that the output directory structure is followed

  • Be sure that you are not using MET utilities outside the METplus wrapper structure

  • After submitting the PR, select Development issue with the original issue number.

  • After the PR is approved, merge your changes. If permissions do not allow this, request that the reviewer do the merge.

  • Close the linked issue.

Sorry, something went wrong.

@malloryprow
Copy link
Contributor Author

Iteration 3: global_ens atmos & headline: stats

  1. Add "set -x"
  2. Rename variables containing "CYC", "cyc", "cycle", "cycles" or remove if the instance isn't needed
  3. Add evs_ver and evs_ver_2d and update COMIN and COMOUT paths in dev/drivers/scripts
  4. Adjust job resources
  5. Remove use of jlogfile and postmsg
  6. General script cleanup
  7. Use "LOG_METPLUS =" to MET output goes to main log file
  8. Remove METplus settings defined individual global_ens METplus configs that are defined in machine.conf
  9. Remove unused METplus config files
  10. Fix GRID_STAT_CLIMO_MEAN_FIELD in precip climo_prob METplus configs to remove MET warning messages
  11. Don't run TCDC stats for GEFS at F000
  12. Add use of err_chk and err_exit
  13. Fix checking of wrong file for ECMWF for grid2grid stats
  14. Add interpreter's at top of scripts
  15. Add mail alerts for missing data
  16. Use cpreq (along with file checking)
  17. Add WARNING to non-fatal logging statements

NOTE: The WMO stats related scripts were not touched as these will not be run in operations.

Describe testing already performed for this Pull Request:

I ran the stats and compared the output to the parallel.

Recommend testing for the reviewer(s) to perform, including the location of input datasets, and any additional instructions:

  1. We will need to run all the scripts in dev/drivers/scripts/stats/global_ens minus the WMO ones.

Has the code been checked to ensure that no errors occur during the execution? Yes

Do these updates/additions include sufficient testing updates? Yes

@ShelleyMelchior-NOAA
Copy link
Contributor

@malloryprow and @StevenSimon-NOAA , I have kicked off all of the stats processing. All are underway and some are completed. Please review.
logfiles: /lfs/h2/emc/ptmp/shelley.melchior/EVS_out/jevs_global_ens_*_stats.o93093*
COMOUT=/lfs/h2/emc/vpppg/noscrub/shelley.melchior/evs/v1.0/stats/global_ens/gefs.20231111

@StevenSimon-NOAA
Copy link
Contributor

@malloryprow and @StevenSimon-NOAA , I have kicked off all of the stats processing. All are underway and some are completed. Please review. logfiles: /lfs/h2/emc/ptmp/shelley.melchior/EVS_out/jevs_global_ens_*_stats.o93093* COMOUT=/lfs/h2/emc/vpppg/noscrub/shelley.melchior/evs/v1.0/stats/global_ens/gefs.20231111

There are a few errors that we need to navigate through. But let's start with the precip stats drivers first. The ecme precip stats job has a syntax error around line 40000. The cmce precip stats job has a bunch of LNET errors in debugging section, but it is not immediately clear what the source is. The naefs precip stats job has a similar syntax error as ecme prcip stats. The gefs precip stats job has the same unknown LNET error as the cmce precip stats job. I will see if there is anything more to these unknown LNET errors. In the meantime, I will delve into the other stats jobs.

@malloryprow
Copy link
Contributor Author

Noted with the ecme and naefs precip. I'll fix that.

What are these LNET errors? I searched "LNET" in /lfs/h2/emc/ptmp/shelley.melchior/EVS_out/jevs_global_ens_cmce_atmos_precip_stats.o93093411 and I'm not getting anything back.

@StevenSimon-NOAA
Copy link
Contributor

/lfs/h2/emc/ptmp/shelley.melchior/EVS_out/

Try a search with just "Error" for both cmce and gefs precip stats. It should appear towards the bottom of both logfiles.

@malloryprow
Copy link
Contributor Author

That isn't related to anything EVS or METplus pretty sure that is something with WCOSS2 nodes.

@malloryprow
Copy link
Contributor Author

@ShelleyMelchior-NOAA Can you please rerun dev/drivers/scripts/stats/global_ens/jevs_global_ens_cmce_atmos_precip_stats.sh, dev/drivers/scripts/stats/global_ens/jevs_global_ens_ecme_atmos_precip_stats.sh, dev/drivers/scripts/stats/global_ens/jevs_global_ens_gefs_atmos_precip_stats.sh, and dev/drivers/scripts/stats/global_ens/jevs_global_ens_naefs_atmos_precip_stats.sh?

@ShelleyMelchior-NOAA
Copy link
Contributor

All previous stats processing has completed.

I have re-submitted the 4 precip drivers noted.
logfiles: /lfs/h2/emc/ptmp/shelley.melchior/EVS_out/
jevs_global_ens_gefs_atmos_precip_stats.o93101107
jevs_global_ens_naefs_atmos_precip_stats.o93101121
jevs_global_ens_ecme_atmos_precip_stats.o93101037
jevs_global_ens_cmce_atmos_precip_stats.o93101509

@malloryprow
Copy link
Contributor Author

jevs_global_ens_ecme_atmos_precip_stats.o93101037 completed and this run does not have the previously mentioned error.

@malloryprow
Copy link
Contributor Author

All jobs are completed. I ran my script to grep for "bad" words on the files. The only concerning ones I found were for the previously run precip jobs but the new logs don't have those errors.

@ShelleyMelchior-NOAA
Copy link
Contributor

This is excellent! Does that seem to satisfy iteration 3 testing?

@malloryprow
Copy link
Contributor Author

I looked over the large stat files. I think iteration 3 is good.

Should I remove iteration 4 from this PR since there is #348?

@AliciaBentley-NOAA
Copy link
Contributor

@malloryprow I would say yes! If this PR gets merged, @MarcelCaron-NOAA can bring your changes into his and be super mindful of any conflicts!

Does that sound good, @ShelleyMelchior-NOAA?

@StevenSimon-NOAA
Copy link
Contributor

I can also confirm that all large global_ens stats files are fully accounted for. I am going over the small stats files right now.

@ShelleyMelchior-NOAA
Copy link
Contributor

Excellent! Yes, iteration 4 will get covered in Marcel's PR #348.
I will continue the formal code review. It will take a little bit of time b/c of how many files were modified. That will allow Steve's small stats file review to continue.

@StevenSimon-NOAA
Copy link
Contributor

So here's the deal with the global_ens small stats files. In most cases, the counted quantities are less than the expected quantities for each field by model. But the log files indicate no apparent errors. So my conjecture right now is that these discrepancies are due to the recent WCOSS2 issues causing stops and discontinuities in the prep space. Does that make sense in this situation?

@malloryprow
Copy link
Contributor Author

malloryprow commented Nov 13, 2023

I added file checks so we don't see any errors anymore when there is missing data. I added a check too to make sure all the ensemble members are present.

@StevenSimon-NOAA
Copy link
Contributor

I added file checks so we don't see any errors anymore when there is missing data. I added a check too to make sure all the ensemble members are present.

In that case, I think we are in good shape with the global_ens small stats files as well.

Copy link
Contributor

@ShelleyMelchior-NOAA ShelleyMelchior-NOAA left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tests yield expected results. This PR is approved for merge.

@ShelleyMelchior-NOAA
Copy link
Contributor

Before I merge, I just want to comment, WOW! You did a ton of work on this Mallory. I mean, I know you did a lot of work, but seeing it in lines of changed code in the formal code review is quite staggering. Well done! Thank you for addressing these critical EE2 items for the global_ens component.

@ShelleyMelchior-NOAA ShelleyMelchior-NOAA merged commit 035f31e into NOAA-EMC:develop Nov 14, 2023
@StevenSimon-NOAA
Copy link
Contributor

StevenSimon-NOAA commented Nov 14, 2023

Before I merge, I just want to comment, WOW! You did a ton of work on this Mallory. I mean, I know you did a lot of work, but seeing it in lines of changed code in the formal code review is quite staggering. Well done! Thank you for addressing these critical EE2 items for the global_ens component.

I second these kudos. These updates to the global_ens component have already helped me better navigate the global_ens logfiles, especially those pesky "red herring errors" that pop up from time to time. Many thanks Mallory for the time and effort you put into these updates! We are now one step closer (pun intended) to getting this EVS component ready for production. Onto global_ens plots!

@malloryprow malloryprow deleted the feature/global_ens_priorities_456 branch November 14, 2023 12:10
@malloryprow
Copy link
Contributor Author

Thank you @ShelleyMelchior-NOAA and @StevenSimon-NOAA!

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.

None yet

4 participants