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

ZM cleanup - create zm_transport module #7084

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

Conversation

whannah1
Copy link
Contributor

@whannah1 whannah1 commented Mar 5, 2025

Create a new module to contain methods for the ZM tracer and momentum transport methods.

[BFB]

@whannah1 whannah1 added Atmosphere BFB PR leaves answers BFB ZM labels Mar 5, 2025
@whannah1 whannah1 requested a review from crterai March 5, 2025 00:13
@whannah1
Copy link
Contributor Author

whannah1 commented Mar 5, 2025

The following tests pass on Chrysalis:

  e3sm_atm_developer_intel
  e3sm_atm_developer_gnu
  SMS_Ld32.ne30pg2_r05_oECv3.F2010.chrysalis_intel
  SMS_Ld32.ne30pg2_r05_oECv3.F2010.chrysalis_gnu
  SMS_Ld32.ne4pg2_oQU480.F2010.chrysalis_intel
  SMS_Ld32.ne4pg2_oQU480.F2010.chrysalis_gnu

The performance of the SMS_Ld32 tests are very close, so there's no notable performance impact

SMS_Ld32.ne30pg2_r05_oECv3.F2010.chrysalis_intel:
    base: ATM Run Time:    3722.581 seconds      116.331 seconds/mday         2.03 myears/wday
    test: ATM Run Time:    3741.495 seconds      116.922 seconds/mday         2.02 myears/wday

          name              on  processes  threads        count      walltotal   wallmax (proc   thrd  )   wallmin (proc   thrd  )
    base: "a:zm_conv_tend"   -        128      256 2.360832e+06   1.560145e+04    69.644 (     6      0)    49.213 (    27      0)
    test: "a:zm_conv_tend"   -        128      256 2.360832e+06   1.593433e+04    70.822 (     6      1)    53.104 (    54      0)

Copy link
Contributor

@AaronDonahue AaronDonahue left a comment

Choose a reason for hiding this comment

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

Looks good to me. Just had one question about a possibly unused variable

implicit none
!----------------------------------------------------------------------------
! Arguments
integer, intent(in) :: lchnk ! chunk identifier
Copy link
Contributor

Choose a reason for hiding this comment

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

Do any of these routines use lchnk? I did a quick search and couldn't find any reference to it other than having it be declared.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Good catch! I think this and some other variables were just added to all ZM subroutines by default in case they were needed, but I can't think of a good justification for leaving this in, so I'll remove it from the interface.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Atmosphere BFB PR leaves answers BFB ZM
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants