Skip to content

Conversation

@DusanJovic-NOAA
Copy link
Collaborator

@DusanJovic-NOAA DusanJovic-NOAA commented Sep 12, 2025

Commit Queue Requirements:

  • Fill out all sections of this template.
  • All sub component pull requests have been reviewed by their code managers.
  • Run the full Intel+GNU RT suite (compared to current baselines) on either Hera/Derecho/Hercules
  • Commit 'test_changes.list' from previous step

Description:

This PR adds a simple tracing module and updates some sub components' nuopc drivers to produce a trace file which can be used to identify performance issues.
The tracing module is not built and used by default. It can be enabled by setting a build option `-DUFS_TRACING=ON'

Commit Message:

* UFSWM - Add tracing instrumentation 
  * CICE - Add tracing instrumentation
  * CMEPS - Add tracing instrumentation
  * FV3 - Add tracing instrumentation
  * MOM6 - Add tracing instrumentation
  * WW3 - Add tracing instrumentation

Priority:

  • Normal

Git Tracking

UFSWM:

Sub component Pull Requests:

UFSWM Blocking Dependencies:

  • None

Documentation:

  • This PR requires a documentation update, and the WM User's Guide has been updated based on the changes in this PR.
  • This PR requires a documentation update, and a WM issue has been opened to track the need for a documentation update; a person responsible for submitting the update has been assigned to the issue (link issue).
  • No documentation update is required for this PR (please explain).

Changes

Regression Test Changes (Please commit test_changes.list):

  • No Baseline Changes.

Input data Changes:

  • None.

Library Changes/Upgrades:

  • No Updates

Testing Log:

  • RDHPCS
    • Hera
    • Orion
    • Hercules
    • GaeaC6
    • Derecho
    • Ursa
  • WCOSS2
    • Dogwood/Cactus
    • Acorn
  • CI
  • opnReqTest (complete task if unnecessary)

@DeniseWorthen
Copy link
Collaborator

DeniseWorthen commented Sep 15, 2025

@DusanJovic-NOAA This tracing will always be "on"; did you think about making it optional? I think each component would then need to retrieve an attribute (? do_tracing or something) and then only if maintask && do_tracing would the calls into ufs_trace be made.

EDIT: I see now that the PR includes the information that you need to compile w/ UFS_TRACING=ON.

@DusanJovic-NOAA
Copy link
Collaborator Author

@DusanJovic-NOAA This tracing will always be "on"; did you think about making it optional? I think each component would then need to retrieve an attribute (? do_tracing or something) and then only if maintask && do_tracing would the calls into ufs_trace be made.

EDIT: I see now that the PR includes the information that you need to compile w/ UFS_TRACING=ON.

Yes. Tracing will not be always "on". By default, it's "off". You turn it on by setting -DUFS_TRACING=ON. It's a build time option, not a run time. It must be a built time, because when components are used outside the UFS, the tracing subroutine is not going to be available, all tracing calls must be ifdef-ed out.  

@gspetro-NOAA
Copy link
Collaborator

@DusanJovic-NOAA I see this PR is open, but the PR template is not fully filled out. Do you have an estimate of when it will be ready/what remains to be done before we schedule it?

@DusanJovic-NOAA
Copy link
Collaborator Author

@DusanJovic-NOAA Please sync with develop; we're ready to begin processing this PR.

Done.

@gspetro-NOAA gspetro-NOAA added Ready for Commit Queue The PR is ready for the Commit Queue. All checkboxes in PR template have been checked. In Testing The PR that is currently in testing stages labels Jan 16, 2026
@FernandoAndrade-NOAA FernandoAndrade-NOAA added the jenkins-ort run ORT testing label Jan 16, 2026
 on-behalf-of @ufs-community <ecc.platform@noaa.gov>
@epic-cicd-jenkins epic-cicd-jenkins removed the jenkins-ort run ORT testing label Jan 16, 2026
@gspetro-NOAA
Copy link
Collaborator

Heads up that there's a delay for the Hercules tests. RTs seemed to be hanging with a "launch failed requeued held" reason listed. I recloned and reran tests last night, and they hung around the same point (~250/320 remaining). This morning, while I was looking into reasons that might be, they restarted again and seem to be running fine, so now I'm just waiting for jobs to complete.

@JessicaMeixner-NOAA
Copy link
Collaborator

WW3 hash: NOAA-EMC/WW3@ae7faa5

@gspetro-NOAA
Copy link
Collaborator

gspetro-NOAA commented Jan 20, 2026

@DusanJovic-NOAA Please revert .gitmodules and update the hashes:

@gspetro-NOAA gspetro-NOAA removed the In Testing The PR that is currently in testing stages label Jan 20, 2026
@gspetro-NOAA gspetro-NOAA merged commit 565b82f into ufs-community:develop Jan 20, 2026
13 checks passed
@DusanJovic-NOAA DusanJovic-NOAA deleted the ufs_tracing branch January 21, 2026 18:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CICE There are changes to the CICE component repository. CMEPS There are changes to the CMEPS component repository. MOM There are changes to the MOM6 component repository. No Baseline Change No Baseline Change Ready for Commit Queue The PR is ready for the Commit Queue. All checkboxes in PR template have been checked. Ready for Review PR is ready for review by CMs to confirm readiness for testing/Commit Queue; 2+ approvals required. UFSATM There are changes to the UFSATM repository. WW3 There are changes to the WW3 component repository.

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

Add simple tracing instrumentation

9 participants