-
Notifications
You must be signed in to change notification settings - Fork 153
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
CCPP acceptance: fv3_stochy / fv3_ccpp stochy bit-for-bit identical #205
Conversation
…or routine patterngenerator_advance in PROD+TRANSITION mode for bit-for-bit identical results
…ochy_bitforbit_prod
Standard regression tests (Theia, Intel 18, REPRO) all pass as expected. rt_ccpp_hybrid.log |
CCPP acceptance tests passed/failed as expected, list of failing tests (down one): fv3_ccpp_stretched rt_ccpp_ref_for_acceptance_create.log |
Ready to merge! |
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.
approved
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.
All I could find were whitespace changes for get_stochy_pattern.F90 (correct?). So, the !DIR$ OPTIMIZE:1 is what lowers optimization for one subroutine within a file? I didn't even know that was possible. Cool.
Yes, !DIR$ OPTIMIZE:N is an Intel-specific compiler directive, ignored by other compilers. It lowers the optimization for this routine only, not for any of the following/preceding subroutines, and also not for any "contained" subroutines. N can be 0,1,2 and I believe even higher. You can also say !DIR$ NOOPTIMIZE instead of !DIR$ OPTIMIZE:0. |
Combination PR for ozone diagnostics, metadata intent bugfixes, sfcsub.F landmask bugfix, and canopy resistance output
These PRs reduce the optimization of a particular routine deep inside the stochastic physics code to obtain bit-for-bit identical results of the (fv3_control based) regression tests fv3_stochy / fv3_ccpp_stochy (static build) in PROD mode.