Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
3c4412a
Update .gitmodules and UFSATM
DusanJovic-NOAA Oct 4, 2025
444d9ad
Add compiler flags for cmake -DFASTER build option
DusanJovic-NOAA Oct 4, 2025
0084389
Update UFSATM
DusanJovic-NOAA Oct 8, 2025
5e487e5
Merge remote-tracking branch 'origin/develop' into faster
DusanJovic-NOAA Oct 8, 2025
d22eb12
Set FASTER build option ON by default
DusanJovic-NOAA Oct 10, 2025
d03c053
Update UFSATM
DusanJovic-NOAA Oct 17, 2025
9ae6b86
Merge remote-tracking branch 'origin/develop' into faster
DusanJovic-NOAA Oct 17, 2025
d1e4ec5
Update test_changes.list
DusanJovic-NOAA Oct 17, 2025
9e9eeaf
Merge remote-tracking branch 'origin/develop' into faster
DusanJovic-NOAA Oct 17, 2025
0121f1a
Add logs/RegressionTests_ursa.log
DusanJovic-NOAA Oct 17, 2025
3d5aa38
add post_itag_gcafs from PR #2957
gspetro-NOAA Oct 29, 2025
ab5de99
add pr board automation from PR #2949
gspetro-NOAA Oct 29, 2025
9284e04
Update UFSATM
DusanJovic-NOAA Oct 29, 2025
038d87e
Merge remote-tracking branch 'origin/develop' into faster
DusanJovic-NOAA Oct 29, 2025
71825f7
update bl_date.conf
gspetro-NOAA Oct 29, 2025
bae0c23
ORT Jobs Completed.
epic-cicd-jenkins Oct 30, 2025
767d5cd
ORT Jobs Completed.
epic-cicd-jenkins Oct 30, 2025
7f652ff
orion rt log - passed
gspetro-NOAA Oct 30, 2025
cf65f5d
hercules rt log - passed
gspetro-NOAA Oct 30, 2025
4876048
add ursa RT log passed
FernandoAndrade-NOAA Oct 30, 2025
cf33294
add gaeaC6 RT log passed
FernandoAndrade-NOAA Oct 30, 2025
03d35c0
add hera RT log passed
FernandoAndrade-NOAA Oct 30, 2025
9101f8b
Update test_changes.list
FernandoAndrade-NOAA Oct 30, 2025
612c0d1
Acorn RT Log: passed
BrianCurtis-NOAA Oct 30, 2025
0970652
WCOSS2 RT Logs: Passed
BrianCurtis-NOAA Oct 30, 2025
9e75683
Revert .gitmodules and update UFSATM
DusanJovic-NOAA Oct 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -124,8 +124,8 @@ For baseline changes, make sure to submit the test_changes.list file generated b
If there are changes to input data for a test, provide information here. Delete options that are not needed.
-->
- [ ] None.
- [ ] New input data.
- [ ] Updated input data.
- [ ] PR adds input data.
- [ ] PR changes existing input data.

### Library Changes/Upgrades:
<!-- Library updates take time. Provide library and version information here, and delete what is not needed.
Expand Down
10 changes: 9 additions & 1 deletion .github/workflows/add_pr_to_project.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,15 @@ jobs:
pull-requests: write
issues: write
steps:
- uses: actions/add-to-project@v1.0.2
- name: Add PR
uses: actions/add-to-project@v1.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
- name: Add date created
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: 'Date Opened'
field-value: ${{ github.event.pull_request.created_at }}
165 changes: 160 additions & 5 deletions .github/workflows/update_project_labels.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -68,19 +68,174 @@ jobs:
pull-requests: write
issues: write
steps:
- name: Input data required
if: contains(github.event.pull_request.labels.*.name, 'Input Data Changes')
- name: Additions to current input-data directory required
if: |
contains(github.event.pull_request.labels.*.name, 'Adds Input Data') &&
!contains(github.event.pull_request.labels.*.name, 'Changes Existing Input Data')
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: "Input Data Req'd"
field-value: 'Yes'
field-value: 'Adds'
- name: New input-data directory required
if: |
contains(github.event.pull_request.labels.*.name, 'Changes Existing Input Data') &&
!contains(github.event.pull_request.labels.*.name, 'Adds Input Data')
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: "Input Data Req'd"
field-value: 'Create New'
- name: No input data changes
if: (!contains(github.event.pull_request.labels.*.name, 'Input Data Changes'))
if: |
(!contains(github.event.pull_request.labels.*.name, 'Changes Existing Input Data')) &&
(!contains(github.event.pull_request.labels.*.name, 'Adds Input Data'))
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: "Input Data Req'd"
field-value: 'No'
field-value: 'None'
- name: Contradictory labels
if: |
contains(github.event.pull_request.labels.*.name, 'Adds Input Data') &&
contains(github.event.pull_request.labels.*.name, 'Changes Existing Input Data')
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: "Input Data Req'd"
field-value: 'Unknown'
priority-labels:
name: Priority
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
issues: write
steps:
- name: Read Priority field
uses: EndBug/project-fields@v2.1.0
id: priority_field
with:
operation: get
fields: Priority
github_token: ${{ secrets.PR_PROJECT_TOKEN }}
project_url: https://github.com/orgs/ufs-community/projects/70
resource_url: ${{ github.event.pull_request.html_url }}
- name: Assign value to Priority field
id: assign_priority
run: |
PRIORITY="${{ steps.priority_field.outputs.values }}"
echo "priority=$PRIORITY" >> $GITHUB_OUTPUT
- name: Normal Priority
if: |
!contains(github.event.pull_request.labels.*.name, 'Priority: Critical') &&
!contains(github.event.pull_request.labels.*.name, 'Priority: High') &&
steps.assign_priority.outputs.priority != 'Combine'
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: 'Priority'
field-value: 'Normal'
- name: Critical priority
if: |
contains(github.event.pull_request.labels.*.name, 'Priority: Critical') &&
steps.assign_priority.outputs.priority != 'Combine'
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: 'Priority'
field-value: 'Critical'
- name: High Priority
if: |
(contains(github.event.pull_request.labels.*.name, 'Priority: High')) &&
steps.assign_priority.outputs.priority != 'Combine'
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: 'Priority'
field-value: 'High'
- name: Unknown Priority
if: |
contains(github.event.pull_request.labels.*.name, 'Priority: Critical') &&
contains(github.event.pull_request.labels.*.name, 'Priority: High')
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: 'Priority'
field-value: 'Unknown'
subcomponent-labels:
name: Subcomponents involved
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
issues: write
env:
SUBCOMPONENTS: ''
steps:
- name: UFSATM
if: contains(github.event.pull_request.labels.*.name, 'UFSATM')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} UFSATM" >> $GITHUB_ENV
- name: CCPP
if: contains(github.event.pull_request.labels.*.name, 'CCPP')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} CCPP" >> $GITHUB_ENV
- name: atmos_cubed_sphere
if: contains(github.event.pull_request.labels.*.name, 'A3S')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} A3S" >> $GITHUB_ENV
- name: UPP
if: contains(github.event.pull_request.labels.*.name, 'UPP')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} UPP" >> $GITHUB_ENV
- name: stochastic_physics
if: contains(github.event.pull_request.labels.*.name, 'SP')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} SP" >> $GITHUB_ENV
- name: AQM
if: contains(github.event.pull_request.labels.*.name, 'AQM')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} AQM" >> $GITHUB_ENV
- name: CMEPS
if: contains(github.event.pull_request.labels.*.name, 'CMEPS')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} CMEPS" >> $GITHUB_ENV
- name: CDEPS
if: contains(github.event.pull_request.labels.*.name, 'CDEPS')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} CDEPS" >> $GITHUB_ENV
- name: CICE
if: contains(github.event.pull_request.labels.*.name, 'CICE')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} CICE" >> $GITHUB_ENV
- name: GOCART
if: contains(github.event.pull_request.labels.*.name, 'GOC')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} GOC" >> $GITHUB_ENV
- name: MOM6
if: contains(github.event.pull_request.labels.*.name, 'MOM')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} MOM" >> $GITHUB_ENV
- name: NOAHMP
if: contains(github.event.pull_request.labels.*.name, 'NMP')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} NMP" >> $GITHUB_ENV
- name: WW3
if: contains(github.event.pull_request.labels.*.name, 'WW3')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} WW3" >> $GITHUB_ENV
- name: LM4
if: contains(github.event.pull_request.labels.*.name, 'LM4')
run: echo "SUBCOMPONENTS=${SUBCOMPONENTS} LM4" >> $GITHUB_ENV
- name: Update subcomponents text
if: ${{ env.SUBCOMPONENTS != '' }}
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: "Subcomponent PRs"
field-value: ${{ env.SUBCOMPONENTS }}
- name: WM only
if: ${{ env.SUBCOMPONENTS == '' }}
uses: nipe0324/update-project-v2-item-field@v2.0.2
with:
project-url: https://github.com/orgs/ufs-community/projects/70
github-token: ${{ secrets.PR_PROJECT_TOKEN }}
field-name: "Subcomponent PRs"
field-value: 'WM only'
8 changes: 6 additions & 2 deletions CDEPS-interface/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,12 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "GNU")
set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -fcheck=bounds -ffpe-trap=invalid,zero,overflow,underflow" )
elseif(CMAKE_Fortran_COMPILER_ID MATCHES "Intel")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -traceback")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -O -assume realloc_lhs")
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -fp-model precise")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -assume realloc_lhs")
if(FASTER)
set(CMAKE_Fortran_FLAGS_RELEASE "-O3 -fp-model precise -assume buffered_stdout -fno-alias -align all -debug minimal -qoverride-limits -ftz -no-ip")
else()
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -fp-model precise")
endif()
set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -check -check noarg_temp_created -check nopointer -fpe0 -ftrapuv -init=snan,arrays")
#Set CPP defintions for the ufs/cdeps_share target library
list(APPEND CDEPS_SHARE_DEFS "CPRINTEL")
Expand Down
24 changes: 21 additions & 3 deletions CICE-interface/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,11 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "GNU")
elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(Intel)$")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -traceback")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -FR -convert big_endian -assume byterecl -ftz -align array64byte")
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -fp-model precise")
if(FASTER)
set(CMAKE_Fortran_FLAGS_RELEASE "-O3 -fp-model precise -assume buffered_stdout -fno-alias -align all -debug minimal -qoverride-limits -ftz -no-ip")
else()
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -fp-model precise")
endif()
set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -check uninit -check bounds -check pointers -fpe0 -check noarg_temp_created -init=snan,arrays")
set(CMAKE_Fortran_LINK_FLAGS "")
elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(IntelLLVM)$")
Expand All @@ -32,12 +36,20 @@ if(CMAKE_C_COMPILER_ID MATCHES "GNU")
set(CMAKE_C_LINK_FLAGS "")
elseif(CMAKE_C_COMPILER_ID MATCHES "^(Intel)$")
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -traceback")
set( CMAKE_C_FLAGS_RELEASE "-O2 -fp-model precise")
if(FASTER)
set( CMAKE_C_FLAGS_RELEASE "-O3 -fp-model precise")
else()
set( CMAKE_C_FLAGS_RELEASE "-O2 -fp-model precise")
endif()
set( CMAKE_C_FLAGS_DEBUG "-O0 -ftrapuv")
set( CMAKE_C_LINK_FLAGS "")
elseif(CMAKE_C_COMPILER_ID MATCHES "^(IntelLLVM)$")
set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -g -traceback")
set( CMAKE_C_FLAGS_RELEASE "-O2 -fp-model precise")
if(FASTER)
set( CMAKE_C_FLAGS_RELEASE "-O3 -fp-model precise")
else()
set( CMAKE_C_FLAGS_RELEASE "-O2 -fp-model precise")
endif()
set( CMAKE_C_FLAGS_DEBUG "-O0")
set( CMAKE_C_LINK_FLAGS "")
elseif(CMAKE_C_COMPILER_ID MATCHES "Clang")
Expand All @@ -56,6 +68,12 @@ set_property(CACHE CICE_IO PROPERTY STRINGS "NetCDF" "PIO" "Binary")
# Too many files to list, so include them via this file
include("cice_files.cmake")

if(NOT ${CMAKE_BUILD_TYPE} MATCHES "Debug")
if(FASTER)
set_source_files_properties(CICE/icepack/columnphysics/icepack_shortwave_data.F90 APPEND_STRING PROPERTY COMPILE_FLAGS " -O2")
Comment thread
jkbk2004 marked this conversation as resolved.
endif()
endif()

# Collect source files for library
list(APPEND lib_src_files
${cice_shared_files}
Expand Down
8 changes: 6 additions & 2 deletions CMEPS-interface/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,12 @@ if(CMAKE_Fortran_COMPILER_ID MATCHES "GNU")
set(CMAKE_Fortran_LINK_FLAGS "")
elseif(CMAKE_Fortran_COMPILER_ID MATCHES "Intel")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -traceback")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -O -assume realloc_lhs")
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -fp-model precise")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -assume realloc_lhs")
if(FASTER)
set(CMAKE_Fortran_FLAGS_RELEASE "-O3 -fp-model precise -assume buffered_stdout -fno-alias -align all -debug minimal -qoverride-limits -ftz -no-ip")
else()
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -fp-model precise")
endif()
set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -check -check noarg_temp_created -check nopointer -fpe0 -ftrapuv -init=snan,arrays")
set(CMAKE_Fortran_LINK_FLAGS "")
#Set CPP defintions for the ufs/cdeps_share source component of the cmeps target library
Expand Down
1 change: 1 addition & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ message("FIRE_BEHAVIOR .... ${FIRE_BEHAVIOR}")
set(32BIT OFF CACHE BOOL "Enable 32BIT (single precision arithmetic in dycore and fast physics)")
set(CCPP_32BIT OFF CACHE BOOL "Enable CCPP_32BIT (single precision arithmetic in slow physics)")
set(RRTMGP_32BIT OFF CACHE BOOL "Enable 32BIT (single precision arithmetic in rte-rrtmgp radiation)")
set(FASTER ON CACHE BOOL "Enable faster optimization compiler flags")
set(AVX2 ON CACHE BOOL "Enable AVX2 instruction set")
set(AVX OFF CACHE BOOL "Enable AVX-I instruction set")
set(SIMDMULTIARCH OFF CACHE BOOL "Enable multi-target SIMD instruction sets")
Expand Down
12 changes: 10 additions & 2 deletions MOM6-interface/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,22 @@ elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(Intel)$")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -traceback")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -i4 -r8")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fno-alias -auto -safe-cray-ptr -ftz -assume byterecl -sox")
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -debug minimal -fp-model source")
if(FASTER)
set(CMAKE_Fortran_FLAGS_RELEASE "-O3 -fp-model precise -assume buffered_stdout -fno-alias -align all -debug minimal -qoverride-limits -ftz -no-ip")
else()
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -debug minimal -fp-model source")
endif()
set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -check -check noarg_temp_created -check nopointer -fpe0 -ftrapuv -init=snan,arrays")
set(CMAKE_Fortran_LINK_FLAGS "")
elseif(CMAKE_Fortran_COMPILER_ID MATCHES "^(IntelLLVM)$")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -g -traceback")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -i4 -r8")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -fno-alias -auto -safe-cray-ptr -ftz -assume byterecl")
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -debug minimal -fp-model precise")
if(FASTER)
set(CMAKE_Fortran_FLAGS_RELEASE "-O3 -fp-model precise -assume buffered_stdout -fno-alias -align all -debug minimal -qoverride-limits -ftz")
else()
set(CMAKE_Fortran_FLAGS_RELEASE "-O2 -debug minimal -fp-model precise")
endif()
set(CMAKE_Fortran_FLAGS_DEBUG "-O0 -check -check noarg_temp_created -check nopointer -fpe0 -ftrapuv -init=snan,arrays")
set(CMAKE_Fortran_LINK_FLAGS "")
else()
Expand Down
2 changes: 1 addition & 1 deletion UFSATM
Submodule UFSATM updated 1 files
+1 −1 fv3/atmos_cubed_sphere
2 changes: 1 addition & 1 deletion tests/bl_date.conf
Original file line number Diff line number Diff line change
@@ -1 +1 @@
export BL_DATE=20251027
export BL_DATE=20251029
Loading