-
Notifications
You must be signed in to change notification settings - Fork 150
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
Update intel compile to Intel2022 #571
Changes from 4 commits
9efbe3b
556e3e3
437b189
da439e1
9e88613
1359145
362c767
437d6fb
3fcb166
caf22c0
f5d200d
8c2ead4
619ecd8
6dca839
aa42971
d8f09b5
b6d8af0
6383ae7
59b9e26
f5b0b23
facd50f
d134822
5d4cf66
bac7531
4fb0a04
b601e59
9434673
f01cca6
aace46e
f842350
db70960
56a22ca
ea336c6
e5d89c3
06772e5
3bf5e01
1fe104e
ff26a62
fe42c85
a7a6a2e
3baf6c7
d3fe9a2
7bd5f95
e50cf96
a0e48e2
4864e07
1d8beed
e2398c7
164126b
8d6009b
29a1bb6
c077a1c
44feb8a
ffba673
3d47231
06ad860
d0fdffc
fb580f1
1e819ea
1ccf38d
e9b24d6
04a4336
e4fc198
91ca898
06ed4d7
f4524b9
1485b20
5edbe26
7cb76d8
047001b
dc96296
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,24 +1,23 @@ | ||
help([[ | ||
]]) | ||
|
||
prepend_path("MODULEPATH", "/scratch2/NCEPDEV/nwprod/hpc-stack/libs/hpc-stack/modulefiles/stack") | ||
prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/miniconda3/modulefiles") | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Does this There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Others should also confirm but the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The updated prepend_path and module versions all come from ufs-weather-model develop for Hera, Jet, and Orion. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Let's work with g-w and others to update as many modulefiles as possible. Tagging @KateFriedman-NOAA , natalie-perlin, and @GeorgeVandenberghe-NOAA , and steven.bongiovanni@noaa.gov. Should anyone be removed from this list? Should anyone be added? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Looks like all of the (fully) supported R&D platforms are covered in this PR (Hera, Orion, Jet). @DavidHuber-NOAA is providing updates for S4 (low support). WCOSS2 is not considered in this PR since it's only intel 2019 still and not EPIC-maintained hpc-stacks. Will update WCOSS2 to intel 2022 at a later date (likely when we move to spack-stack but not 100% on that). Updates in this PR should not break WCOSS2 functionality. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. OK. GSI There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Paths look correct. A couple versions are ahead of where workflow is (and not in UFS), but we can update to match. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this resolved, then? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. If GSI paths are ahead of g-w, will There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. This will need to be resolved in the g-w. I linked this discussion into the relevant issue NOAA-EMC/global-workflow#812. I believe this conversation can be resolved. |
||
miniconda3_ver=os.getenv("miniconda3_ver") or "4.12.0" | ||
load(pathJoin("miniconda3", miniconda3_ver)) | ||
|
||
local hpc_ver=os.getenv("hpc_ver") or "1.1.0" | ||
local hpc_intel_ver=os.getenv("hpc_intel_ver") or "18.0.5.274" | ||
local hpc_impi_ver=os.getenv("hpc_impi_ver") or "2018.0.4" | ||
prepend_path("MODULEPATH", "/scratch1/NCEPDEV/nems/role.epic/hpc-stack/libs/intel-2022.1.2/modulefiles/stack") | ||
RussTreadon-NOAA marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
local hpc_ver=os.getenv("hpc_ver") or "1.2.0" | ||
local hpc_intel_ver=os.getenv("hpc_intel_ver") or "2022.1.2" | ||
local hpc_impi_ver=os.getenv("hpc_impi_ver") or "2022.1.2" | ||
local cmake_ver=os.getenv("cmake_ver") or "3.20.1" | ||
local anaconda_ver=os.getenv("anaconda_ver") or "2.3.0" | ||
local prod_util_ver=os.getenv("prod_util_ver") or "1.2.2" | ||
|
||
load(pathJoin("hpc", hpc_ver)) | ||
load(pathJoin("hpc-intel", hpc_intel_ver)) | ||
load(pathJoin("hpc-impi", hpc_impi_ver)) | ||
load(pathJoin("cmake", cmake_ver)) | ||
|
||
prepend_path("MODULEPATH", "/contrib/anaconda/modulefiles") | ||
|
||
load(pathJoin("anaconda", anaconda_ver)) | ||
|
||
load("gsi_common") | ||
|
||
load(pathJoin("prod_util", prod_util_ver)) | ||
|
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -753,6 +753,8 @@ end subroutine contents_binary_diag_ | |
|
||
subroutine contents_netcdf_diag_ | ||
use sparsearr, only: sparr2, readarray, fullarray | ||
use constants, only: r_missing | ||
use screen_to_ncdiag | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. GSI coding standards require
To conform to this standard we need
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fixed. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
|
||
integer(i_kind),dimension(miter) :: obsdiag_iuse | ||
integer(i_kind) :: obstype, obssubtype | ||
type(sparr2) :: dhx_dx | ||
|
@@ -766,27 +768,33 @@ subroutine contents_netcdf_diag_ | |
obssubtype = gps_allptr%rdiag(2) | ||
call nc_diag_metadata("Observation_Type", obstype ) | ||
call nc_diag_metadata("Observation_Subtype", obssubtype ) | ||
call nc_diag_metadata("Latitude", sngl(gps_allptr%rdiag(3)) ) | ||
call nc_diag_metadata("Longitude", sngl(gps_allptr%rdiag(4)) ) | ||
call nc_diag_metadata("Incremental_Bending_Angle", sngl(gps_allptr%rdiag(5)) ) | ||
call nc_diag_metadata("Pressure", sngl(gps_allptr%rdiag(6)) ) | ||
call nc_diag_metadata("Height", sngl(gps_allptr%rdiag(7)) ) | ||
call nc_diag_metadata("Time", sngl(gps_allptr%rdiag(8)) ) | ||
call nc_diag_metadata("Model_Elevation", sngl(gps_allptr%rdiag(9)) ) | ||
call nc_diag_metadata("Setup_QC_Mark", sngl(gps_allptr%rdiag(10)) ) | ||
call nc_diag_metadata("Prep_Use_Flag", sngl(gps_allptr%rdiag(11)) ) | ||
call nc_diag_metadata("Analysis_Use_Flag", sngl(gps_allptr%rdiag(12)) ) | ||
|
||
call nc_diag_metadata("Nonlinear_QC_Rel_Wgt", sngl(gps_allptr%rdiag(13)) ) | ||
call nc_diag_metadata("Errinv_Input", sngl(gps_allptr%rdiag(14)) ) | ||
call nc_diag_metadata("Errinv_Adjust", sngl(gps_allptr%rdiag(15)) ) | ||
call nc_diag_metadata("Errinv_Final", sngl(gps_allptr%rdiag(16)) ) | ||
call nc_diag_metadata("Observation", sngl(gps_allptr%rdiag(17)) ) | ||
call nc_diag_metadata("Obs_Minus_Forecast_adjusted", sngl(gps_allptr%rdiag(17))*sngl(gps_allptr%rdiag(5)) ) | ||
call nc_diag_metadata("Obs_Minus_Forecast_unadjusted", sngl(gps_allptr%rdiag(17))*sngl(gps_allptr%rdiag(5)) ) | ||
call nc_diag_metadata("GPS_Type", sngl(gps_allptr%rdiag(20)) ) | ||
call nc_diag_metadata("Temperature_at_Obs_Location", sngl(gps_allptr%rdiag(18)) ) | ||
call nc_diag_metadata("Specific_Humidity_at_Obs_Location", sngl(gps_allptr%rdiag(21)) ) | ||
call screen_to_single_nc_diag_metadata("Latitude",(gps_allptr%rdiag(3)) ) | ||
call screen_to_single_nc_diag_metadata("Longitude",(gps_allptr%rdiag(4)) ) | ||
call screen_to_single_nc_diag_metadata("Incremental_Bending_Angle",(gps_allptr%rdiag(5)) ) | ||
call screen_to_single_nc_diag_metadata("Pressure",(gps_allptr%rdiag(6)) ) | ||
call screen_to_single_nc_diag_metadata("Height",(gps_allptr%rdiag(7)) ) | ||
call screen_to_single_nc_diag_metadata("Time",(gps_allptr%rdiag(8)) ) | ||
call screen_to_single_nc_diag_metadata("Model_Elevation",(gps_allptr%rdiag(9)) ) | ||
call screen_to_single_nc_diag_metadata("Setup_QC_Mark",(gps_allptr%rdiag(10)) ) | ||
call screen_to_single_nc_diag_metadata("Prep_Use_Flag",(gps_allptr%rdiag(11)) ) | ||
call screen_to_single_nc_diag_metadata("Analysis_Use_Flag",(gps_allptr%rdiag(12)) ) | ||
|
||
call screen_to_single_nc_diag_metadata("Nonlinear_QC_Rel_Wgt",(gps_allptr%rdiag(13)) ) | ||
call screen_to_single_nc_diag_metadata("Errinv_Input",(gps_allptr%rdiag(14)) ) | ||
call screen_to_single_nc_diag_metadata("Errinv_Adjust",(gps_allptr%rdiag(15)) ) | ||
call screen_to_single_nc_diag_metadata("Errinv_Final",(gps_allptr%rdiag(16)) ) | ||
call screen_to_single_nc_diag_metadata("Observation",(gps_allptr%rdiag(17)) ) | ||
!TODO Verify that 'adjusted' is supposed to be the same as unadjusted | ||
RussTreadon-NOAA marked this conversation as resolved.
Show resolved
Hide resolved
|
||
if(isnan(gps_allptr%rdiag(17)) .or. isnan(gps_allptr%rdiag(5))) then | ||
RussTreadon-NOAA marked this conversation as resolved.
Show resolved
Hide resolved
|
||
call nc_diag_metadata("Obs_Minus_Forecast_adjusted", sngl(real(r_missing))) | ||
call nc_diag_metadata("Obs_Minus_Forecast_unadjusted", sngl(real(r_missing))) | ||
else | ||
call nc_diag_metadata("Obs_Minus_Forecast_adjusted", sngl(gps_allptr%rdiag(17))*sngl(gps_allptr%rdiag(5)) ) | ||
call nc_diag_metadata("Obs_Minus_Forecast_unadjusted", sngl(gps_allptr%rdiag(17))*sngl(gps_allptr%rdiag(5)) ) | ||
endif | ||
call screen_to_single_nc_diag_metadata("GPS_Type",(gps_allptr%rdiag(20)) ) | ||
call screen_to_single_nc_diag_metadata("Temperature_at_Obs_Location",(gps_allptr%rdiag(18)) ) | ||
call screen_to_single_nc_diag_metadata("Specific_Humidity_at_Obs_Location",(gps_allptr%rdiag(21)) ) | ||
|
||
if (save_jacobian) then | ||
call readarray(dhx_dx, gps_allptr%rdiag(ioff+1:nreal)) | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is is necessary to add
w3nco
to the list of common modules to build with intel2022?There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@RussTreadon-NOAA
w3nco
was loaded bynemsio
versions 2.5.2 and earlier, but is no longer, so it now needs to be loaded explicitly.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for the explanation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@DavidHuber-NOAA
If you are loading
nemsio
, 2.5.4, it depends onw3emc
. You no longer needw3nco
.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
c.f. https://github.com/NOAA-EMC/NCEPLIBS-nemsio/blob/v2.5.4/cmake/PackageConfig.cmake.in
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@aerorahul I removed the w3nco load. Thanks! Note there is a placeholder for the new ncdiag library here which provides a local install on Hera presently. I will update this when the new ncdiag PR is merged and the new tag is installed everywhere.