Skip to content

Conversation

@samsrabin
Copy link
Contributor

There is a long-standing bug, extremely difficult to diagnose, where building CESM will fail using the nag compiler on Izumi if you didn't enable debug mode. This PR makes it so that tests with such a configuration will fail with a useful error message.

Test suite:
Test baseline:
Test namelist changes:
Test status: [bit for bit, roundoff, climate changing]

Fixes [CIME Github issue #]

User interface changes?: No

Update gh-pages html (Y/N)?: No

@codecov
Copy link

codecov bot commented Jul 11, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Please upload report for BASE (master@1006c39). Learn more about missing BASE report.

Additional details and impacted files
@@            Coverage Diff            @@
##             master    #4820   +/-   ##
=========================================
  Coverage          ?   55.21%           
=========================================
  Files             ?      266           
  Lines             ?    38425           
  Branches          ?     8303           
=========================================
  Hits              ?    21217           
  Misses            ?    14854           
  Partials          ?     2354           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@samsrabin
Copy link
Contributor Author

It looks like there is at least one CESM test that uses izumi nag without debug. From testlist_cam.xml:

  <test compset="QPC6" grid="ne5pg3_ne5pg3_mg37" name="ERP_Ln9" testmods="cam/outfrq9s_clubbmf">
    <machines>
      <machine name="izumi" compiler="nag" category="aux_cam"/>
    </machines>
    <options>
      <option name="wallclock">00:10:00</option>
    </options>
  </test>

I'm not seeing this test in any expected failure list, so maybe it'd be better to do this check in CTSM instead. @ekluzek

@ekluzek
Copy link
Contributor

ekluzek commented Jul 14, 2025

Yeah, I see that test and a few others that use izumi_nag without debug in CESM tests:

from:

./query_testlists --xml-compiler nag --xml-machine izumi

for lines without "_D"

aux_cam           : ERP_Ln9.ne5pg3_ne5pg3_mg37.QPC6.izumi_nag.cam-outfrq9s_clubbmf                                                  
aux_cmeps         : ERP_Ln9.ne5pg3_ne5pg3_mg37.QPC6.izumi_nag.cam-outfrq9s_clubbmf                                                  
aux_cmeps         : ERP_Ln9.ne5pg3_ne5pg3_mg37.QPC6.izumi_nag.cam-outfrq9s_clubbmf                                                  
aux_glc           : IRT_Ly5_P24x1.f09_g17_ais8gris4.T1850Gag.izumi_nag                                                               # Include a multi-ice sheet IRT test to test saving and restoring interim restart files to/from the archive (partly because the specification of interim restart file patterns for multiple ice sheets in config_archive.xml is a bit tricky).
waccm             : ERP_Ln9.f10_f10_mg37.QPWmaC6.izumi_nag.cam-outfrq9s_mee_fluxes 

So we don't want to mess those tests up, and should just do a CTSM only solution.

Copy link
Contributor

@ekluzek ekluzek left a comment

Choose a reason for hiding this comment

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

The change looks good. It looks like it makes it easy to see what to do. But, it is really specific to a specific CESM case.

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.

2 participants