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

Stop running 0th time step #2084

Open
wants to merge 15 commits into
base: master
Choose a base branch
from
Open

Stop running 0th time step #2084

wants to merge 15 commits into from

Conversation

olyson
Copy link
Contributor

@olyson olyson commented Aug 1, 2023

Description of changes

Stop running 0th time step.

Specific notes

See discussion in #925
Note that "!KO" comments are still to be removed.

Contributors other than yourself, if any: @billsacks

CTSM Issues Fixed (include github issue #): #925

Are answers expected to change (and if so in what way)? Yes, more than roundoff.

Any User Interface Changes (namelist or namelist defaults changes)? No

Testing performed, if any:
See discussion in #925

@billsacks
Copy link
Member

Thanks a lot for this work, @olyson !

Are there any pieces of this that you feel warrant a careful review - i.e., that you'd like someone else to think about (if so, I would probably ask someone else to do that so that I can stay focused on some ESMF work for now)- or are you comfortable enough with the changes you made that a quick look-over should be sufficient?

Can you please go ahead and remove the !KO comments when you get a chance?

@billsacks billsacks requested review from ekluzek and removed request for billsacks August 3, 2023 16:23
@billsacks billsacks assigned olyson and unassigned billsacks Aug 3, 2023
@billsacks
Copy link
Member

From discussion today: @olyson feels reasonably confident that these changes are correct.

@samsrabin would like us to run ctsm_sci - or at least his new test - to make sure that this change doesn't break that.

@billsacks billsacks assigned ekluzek and unassigned olyson Aug 3, 2023
@olyson
Copy link
Contributor Author

olyson commented Aug 3, 2023

We agreed to leave my comments in for now to help @ekluzek perform his review and understand the reasoning behind the changes, then remove them after that.

@olyson
Copy link
Contributor Author

olyson commented Aug 3, 2023

@olyson will run the full test suite on this before @ekluzek 's review.

Copy link
Member

@billsacks billsacks left a comment

Choose a reason for hiding this comment

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

I just skimmed through some pieces of this (not a full review, but just some selective checks). Thank you very much for your careful work on this @olyson and especially for the comments describing your reasoning!

I did a quick check that the changes here are consistent with some specific things I raised in #925 . One question I had from skimming back through the comments in #925 is if you remember if you did the searches through the code that I mentioned in #925 (comment):

I think when I did my earlier search I looked for nstep == 0 but didn't look for similar things like nstep /= 0, nstep > 0, nstep >= 1, etc. We'll need to check for uses like that.

!KO if (num_pcropp > 0 .and. .not. is_first_step()) then
!KO
! Unknown if all restart files have been generated with 1623 resolved but we no longer have a time step 0
if (num_pcropp > 0) then
Copy link
Member

@billsacks billsacks Aug 3, 2023

Choose a reason for hiding this comment

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

  • Great, thanks for this change. I agree with this and we can remove the above BACKWARDS_COMPATIBILITY comment.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks, yes, I had a comment in #925 noting that I checked for those things:
"Reviewed the code for instances of nstep == 0, nstep == 1, nstep /= 0, nstep > 0, etc (with and without spaces), and is_first_step, and made changes as required."
There could be some combination I didn't think of, if you or anyone has one I'll re-check.
I've removed the BACKWARDS_COMPATIBILITY comment in my latest commit.

Copy link
Member

Choose a reason for hiding this comment

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

Oops, sorry, I missed that in my skim back through that issue. Thank you!

@olyson
Copy link
Contributor Author

olyson commented Aug 4, 2023

Full aux_clm test suite results (output of ./parse_cime.cs.status tests_0803-171434ch/cs.status -s):

Test summary
176 Total tests
174 Tests passed
172 Tests compare different to baseline
0 Tests are new where there is no baseline
1 Tests pending
1 Tests failed

The pending test is EXPECTED as is the failed test.
The two tests that did not compare different to baseline are:
FUNITCTSM_P1x1.f10_f10_mg37.I2000Clm50Sp.cheyenne_intel
PFS_Ld10_PS.f19_g17.I2000Clm50BgcCrop.cheyenne_intel

I'm not familiar with those two tests. Maybe someone will know why those might pass? Otherwise, I will look into it.

@billsacks
Copy link
Member

Thanks @olyson !

It makes sense that the FUNIT test doesn't show BASELINE comparison failures: that is a weird test that just runs the unit tests, so doesn't actually do baseline comparisons.

As for the PFS test: I think it might not actually produce any history files (by design)... so again, it makes sense that there are no BASELINE failures for that since there is nothing to compare.

@olyson
Copy link
Contributor Author

olyson commented Aug 4, 2023

Yep, I don't see any history files for the PFS test, thanks.

@samsrabin
Copy link
Collaborator

@olyson Exactly, thanks!

Add sowing window input files

Previously, one could run crops with either (a) sowing windows defined by the hemisphere-specific start and end dates on the paramfile or (b) prescribed sowing dates specified by input file stream_fldFileName_sdate. This PR replaces the latter with two new input files, stream_fldFileName_swindow_start and stream_fldFileName_swindow_end.
@olyson
Copy link
Contributor Author

olyson commented Nov 1, 2023

I updated to ctsm5.1.dev147, then I ran ./manage_externals/checkout_externals and ended up with some not in a clean state (components/rtm and components/mosart tagged with "M"). I think that is because I forgot that I had local changes to rtm and mosart to handle zeroth time step for those components.
I have separate branches for rtm and mosart that takes care of those changes.
So, I'm wondering if I can/should just checkout the changed files and then run checkout_externals again. Is that the best way to handle that?

@samsrabin
Copy link
Collaborator

I think the best thing to do would be to push your updated RTM and MOSART branches to your forks of those repos, then point the zerothtstep Externals.cfg to those branches. The easiest thing to do might be to git stash in components/mosart and components/rtm, do the externals checkout, then do git stash apply in those same directories.

@olyson
Copy link
Contributor Author

olyson commented Nov 1, 2023

Ok, I chose the easiest thing. I believe my branch is now up to date with ctsm5.1.dev147.

@samsrabin
Copy link
Collaborator

Nice, thanks! If you go ahead and push, I'll submit a PR when my test is done.

@olyson
Copy link
Contributor Author

olyson commented Nov 1, 2023

It's pushed now.

Fix RXCROPMATURITY test in zerothtstep branch
@samsrabin samsrabin added the blocked: dependency Wait to work on this until dependency is resolved label Jan 25, 2024
@ekluzek ekluzek added the PR status: ready PR: this is ready to merge in, with all tests satisfactory and reviews complete label Jan 29, 2024
@wwieder wwieder added this to the ctsm6.0.0 (code freeze) milestone May 2, 2024
@samsrabin samsrabin added the external issue needs to be addressed elsewhere (submodule); issue here for the sake of project tracking label Oct 17, 2024
@wwieder
Copy link
Contributor

wwieder commented Oct 17, 2024

These are blocked because changes also need to be made on mosart on rtm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
blocked: dependency Wait to work on this until dependency is resolved external issue needs to be addressed elsewhere (submodule); issue here for the sake of project tracking PR status: ready PR: this is ready to merge in, with all tests satisfactory and reviews complete
Projects
Status: Slow roast (incremental or external progress)
Status: In progress - master/b4b-dev
Development

Successfully merging this pull request may close these issues.

6 participants