Skip to content

Transition the SLR Roebber algorithm to UPP #609

Merged
WenMeng-NOAA merged 32 commits into
NOAA-EMC:developfrom
JesseMeng-NOAA:slr
Jan 11, 2023
Merged

Transition the SLR Roebber algorithm to UPP #609
WenMeng-NOAA merged 32 commits into
NOAA-EMC:developfrom
JesseMeng-NOAA:slr

Conversation

@JesseMeng-NOAA
Copy link
Copy Markdown
Contributor

@JesseMeng-NOAA JesseMeng-NOAA commented Dec 22, 2022

Code for calculating SLR using the Roebber algorithm is developed and included in UPP_PHYSICS.f module.
MDL2P.f calls calslr_roebber() to calculate SLR and outputs a new field of Grib2 standard variable SDEN (SLR=1000./SDEN).
The following configure files are modified to include SLR,
postxconfig-NT-GFS.txt
postxconfig-NT-fv3lam.txt
postxconfig-NT-fv3lam_rrfs.txt

The run script needs to copy the files fix/Breadboard/Breadboard*.nsw to the run directory.

Regress tests for gfs and fv3r can be made by manually overwrite the configure files with
postxconfig-NT-GFS.txt.dev
postxconfig-NT-fv3lam.txt.dev

Output is identical to baseline except for the additional output field SDEN.

UPP Issus #566

SMoorthi-emc and others added 21 commits July 15, 2022 21:26
@WenMeng-NOAA WenMeng-NOAA linked an issue Dec 22, 2022 that may be closed by this pull request
@WenMeng-NOAA WenMeng-NOAA added the Ready for Review This PR is ready for code review. label Dec 27, 2022
@WenMeng-NOAA
Copy link
Copy Markdown
Collaborator

@JesseMeng-NOAA Can you sync your branch with upstream/develop and solve conflicts?

@WenMeng-NOAA
Copy link
Copy Markdown
Collaborator

@JesseMeng-NOAA Do you have the sample model history files for my testing? Thanks!

@JesseMeng-NOAA
Copy link
Copy Markdown
Contributor Author

@JesseMeng-NOAA Here are the pe tests for gfs and rrfs: gfs: test1: config.: place=vscatter,select=2:ncpus=48 runtime: 03:54:10 test2: config: place=vscatter,select=1:ncpus=84 runtime: 07:34:16 rrfs: test1: config: place=vscatter,select=2:ncpus=48 runtime: 08:37:23 test2: config: place=vscatter,select=1:ncpus=84 runtime: 15:53:01 It appears to me further code enhancement might be needed. @HuiyaChuang-NOAA may chime in. Thanks!

Please provide the runtimes of current develop branch without SLR so we have a target. Thanks.

@HuiyaChuang-NOAA
Copy link
Copy Markdown
Contributor

HuiyaChuang-NOAA commented Jan 6, 2023 via email

@HuiyaChuang-NOAA
Copy link
Copy Markdown
Contributor

I looked at Jesse's updates. He's not reading these coefficient files anymore.
Instead, he put them in Data Statements. It seems like this should save time but
Wen's tests show it's now taking longer for RRFS??

@JesseMeng-NOAA Jesse, did you run tests yourself?

@JesseMeng-NOAA
Copy link
Copy Markdown
Contributor Author

JesseMeng-NOAA commented Jan 6, 2023

@JesseMeng-NOAA Here are the pe tests for gfs and rrfs: gfs: test1: config.: place=vscatter,select=2:ncpus=48 runtime: 03:54:10 test2: config: place=vscatter,select=1:ncpus=84 runtime: 07:34:16 rrfs: test1: config: place=vscatter,select=2:ncpus=48 runtime: 08:37:23 test2: config: place=vscatter,select=1:ncpus=84 runtime: 15:53:01 It appears to me further code enhancement might be needed. @HuiyaChuang-NOAA may chime in. Thanks!

I believe Wen's runtime should be like
RRFS
test1: regular test
config.: place=vscatter,select=2:ncpus=48
runtime: 03:54:10
test2: pe test
config: place=vscatter,select=1:ncpus=84
runtime: 07:34:16
GFS
test1: regular test
config: place=vscatter,select=2:ncpus=48
runtime: 08:37:23
test2: pe test
config: place=vscatter,select=1:ncpus=84
runtime: 15:53:01

I ran the SLR tests and the develop branch without SLR calculations. Runtimes are similar, pe tests almost doubled.

@WenMeng-NOAA , please let us know if we have consistent results.

@HuiyaChuang-NOAA
Copy link
Copy Markdown
Contributor

@JesseMeng-NOAA Here are the pe tests for gfs and rrfs: gfs: test1: config.: place=vscatter,select=2:ncpus=48 runtime: 03:54:10 test2: config: place=vscatter,select=1:ncpus=84 runtime: 07:34:16 rrfs: test1: config: place=vscatter,select=2:ncpus=48 runtime: 08:37:23 test2: config: place=vscatter,select=1:ncpus=84 runtime: 15:53:01 It appears to me further code enhancement might be needed. @HuiyaChuang-NOAA may chime in. Thanks!

I believe Wen's runtime should be like RRFS test1: regular test config.: place=vscatter,select=2:ncpus=48 runtime: 03:54:10 test2: pe test config: place=vscatter,select=1:ncpus=84 runtime: 07:34:16 GFS test1: regular test config: place=vscatter,select=2:ncpus=48 runtime: 08:37:23 test2: pe test config: place=vscatter,select=1:ncpus=84 runtime: 15:53:01

I ran the SLR tests and the develop branch without SLR calculations. Runtimes are similar, pe tests almost doubled.

@WenMeng-NOAA , please let us know if we have consistent results.

@JesseMeng-NOAA are you saying in the regular test of UPP regression tests, adding SLR did not increase run time
much for both GFS and RRFS?

@JesseMeng-NOAA
Copy link
Copy Markdown
Contributor Author

@JesseMeng-NOAA Here are the pe tests for gfs and rrfs: gfs: test1: config.: place=vscatter,select=2:ncpus=48 runtime: 03:54:10 test2: config: place=vscatter,select=1:ncpus=84 runtime: 07:34:16 rrfs: test1: config: place=vscatter,select=2:ncpus=48 runtime: 08:37:23 test2: config: place=vscatter,select=1:ncpus=84 runtime: 15:53:01 It appears to me further code enhancement might be needed. @HuiyaChuang-NOAA may chime in. Thanks!

I believe Wen's runtime should be like RRFS test1: regular test config.: place=vscatter,select=2:ncpus=48 runtime: 03:54:10 test2: pe test config: place=vscatter,select=1:ncpus=84 runtime: 07:34:16 GFS test1: regular test config: place=vscatter,select=2:ncpus=48 runtime: 08:37:23 test2: pe test config: place=vscatter,select=1:ncpus=84 runtime: 15:53:01
I ran the SLR tests and the develop branch without SLR calculations. Runtimes are similar, pe tests almost doubled.
@WenMeng-NOAA , please let us know if we have consistent results.

@JesseMeng-NOAA are you saying in the regular test of UPP regression tests, adding SLR did not increase run time much for both GFS and RRFS?

Yes

@HuiyaChuang-NOAA
Copy link
Copy Markdown
Contributor

@JesseMeng-NOAA Here are the pe tests for gfs and rrfs: gfs: test1: config.: place=vscatter,select=2:ncpus=48 runtime: 03:54:10 test2: config: place=vscatter,select=1:ncpus=84 runtime: 07:34:16 rrfs: test1: config: place=vscatter,select=2:ncpus=48 runtime: 08:37:23 test2: config: place=vscatter,select=1:ncpus=84 runtime: 15:53:01 It appears to me further code enhancement might be needed. @HuiyaChuang-NOAA may chime in. Thanks!

I believe Wen's runtime should be like RRFS test1: regular test config.: place=vscatter,select=2:ncpus=48 runtime: 03:54:10 test2: pe test config: place=vscatter,select=1:ncpus=84 runtime: 07:34:16 GFS test1: regular test config: place=vscatter,select=2:ncpus=48 runtime: 08:37:23 test2: pe test config: place=vscatter,select=1:ncpus=84 runtime: 15:53:01
I ran the SLR tests and the develop branch without SLR calculations. Runtimes are similar, pe tests almost doubled.
@WenMeng-NOAA , please let us know if we have consistent results.

@JesseMeng-NOAA are you saying in the regular test of UPP regression tests, adding SLR did not increase run time much for both GFS and RRFS?

Yes

That's a good news. I think if you can figure out why PE tests takes much longer, then I think we should be ready for your merge

@JesseMeng-NOAA
Copy link
Copy Markdown
Contributor Author

JesseMeng-NOAA commented Jan 6, 2023

@JesseMeng-NOAA Here are the pe tests for gfs and rrfs: gfs: test1: config.: place=vscatter,select=2:ncpus=48 runtime: 03:54:10 test2: config: place=vscatter,select=1:ncpus=84 runtime: 07:34:16 rrfs: test1: config: place=vscatter,select=2:ncpus=48 runtime: 08:37:23 test2: config: place=vscatter,select=1:ncpus=84 runtime: 15:53:01 It appears to me further code enhancement might be needed. @HuiyaChuang-NOAA may chime in. Thanks!

I believe Wen's runtime should be like RRFS test1: regular test config.: place=vscatter,select=2:ncpus=48 runtime: 03:54:10 test2: pe test config: place=vscatter,select=1:ncpus=84 runtime: 07:34:16 GFS test1: regular test config: place=vscatter,select=2:ncpus=48 runtime: 08:37:23 test2: pe test config: place=vscatter,select=1:ncpus=84 runtime: 15:53:01
I ran the SLR tests and the develop branch without SLR calculations. Runtimes are similar, pe tests almost doubled.
@WenMeng-NOAA , please let us know if we have consistent results.

@JesseMeng-NOAA are you saying in the regular test of UPP regression tests, adding SLR did not increase run time much for both GFS and RRFS?

Yes

That's a good news. I think if you can figure out why PE tests takes much longer, then I think we should be ready for your merge

From my tests pe tests of develop branch also spend almost doubled runtime for both gfs and rrfs without SLR.
Runtimes are similar between develop branch and SLR branch, in both regular tests and pe tests.
Need @WenMeng-NOAA to confirm we have consistent results.

@JesseMeng-NOAA
Copy link
Copy Markdown
Contributor Author

develop branch without SLR
gfs
The total amount of wall time = 169.112490
The total amount of time in user mode = 124.006542
The total amount of time in sys mode = 10.013820
Runtime 08:37:42 fv3gfs.test 14:00:00
gfs_pe
The total amount of wall time = 166.342300
The total amount of time in user mode = 130.934943
The total amount of time in sys mode = 11.676975
Runtime 15:52:19 fv3gfs.pe_test 14:00:00

SLR branch
gfs
The total amount of wall time = 171.994528
The total amount of time in user mode = 125.884859
The total amount of time in sys mode = 10.400800
Runtime 08:41:36 fv3gfs.test 14:00:00
gfs_pe
The total amount of wall time = 161.340567
The total amount of time in user mode = 131.704388
The total amount of time in sys mode = 11.231939
Runtime 15:53:35 fv3gfs.pe_test 14:00:00

Comment thread parm/postxconfig-NT-fv3lam.txt Outdated
Comment thread parm/postxconfig-NT-fv3lam_rrfs.txt Outdated
Comment thread parm/fv3lam.xml
Comment thread parm/fv3lam_rrfs.xml
@WenMeng-NOAA WenMeng-NOAA added the Baseline Change The baselines of the UPP regression tests are changed. label Jan 10, 2023
Comment thread parm/postcntrl_gfs_two.xml Outdated
@WenMeng-NOAA
Copy link
Copy Markdown
Collaborator

@JesseMeng-NOAA Can you include SLR in parm/global_1x1_pamlist_g2 so it can be generated in pgrb2 dataset?

@JesseMeng-NOAA
Copy link
Copy Markdown
Contributor Author

@JesseMeng-NOAA Can you include SLR in parm/global_1x1_pamlist_g2 so it can be generated in pgrb2 dataset?

Done

@WenMeng-NOAA
Copy link
Copy Markdown
Collaborator

The UPP RT tests were completed on WCOSS2, Hera and Orion. The baselines of gfs and fv3r will be recreated with this PR.

@WenMeng-NOAA WenMeng-NOAA merged commit e88dbea into NOAA-EMC:develop Jan 11, 2023
@HuiyaChuang-NOAA
Copy link
Copy Markdown
Contributor

Thank you! @JesseMeng-NOAA @WenMeng-NOAA

@JesseMeng-NOAA
Copy link
Copy Markdown
Contributor Author

Thank you! @WenMeng-NOAA @HuiyaChuang-NOAA

@JesseMeng-NOAA JesseMeng-NOAA deleted the slr branch March 23, 2023 15:00
zhanglikate pushed a commit to zhanglikate/UPP that referenced this pull request Oct 10, 2025
* update atmos_cubed_sphere
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Baseline Change The baselines of the UPP regression tests are changed. GFSV17 Ready for Review This PR is ready for code review. RRFS

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Transition two SLR algorithms to UPP

5 participants