-
Notifications
You must be signed in to change notification settings - Fork 371
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch E3SM-Project/ndk/machinefiles/alvarez-update (PR #5966)
For alvarez (internal test machine for pm-cpu), update machine file settings
- Loading branch information
Showing
3 changed files
with
87 additions
and
13 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# For this file, fixes non-BFB behavior of stealth feature on pm-cpu with -O2 | ||
set(NOOPT | ||
eam/src/physics/cam/zm_conv.F90) | ||
|
||
if (NOT DEBUG) | ||
foreach(ITEM IN LISTS NOOPT) | ||
e3sm_remove_flags("${ITEM}" "-O2") | ||
e3sm_remove_flags("${ITEM}" "-O") | ||
endforeach() | ||
endif() | ||
|
||
|
||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
string(APPEND CONFIG_ARGS " --host=cray") | ||
if (COMP_NAME STREQUAL gptl) | ||
string(APPEND CPPDEFS " -DHAVE_NANOTIME -DBIT64 -DHAVE_SLASHPROC -DHAVE_GETTIMEOFDAY") | ||
endif() | ||
string(APPEND SLIBS " -L$ENV{CRAY_HDF5_PARALLEL_PREFIX}/lib -lhdf5_hl -lhdf5 -L$ENV{CRAY_NETCDF_HDF5PARALLEL_PREFIX}/lib -L$ENV{CRAY_PARALLEL_NETCDF_PREFIX}/lib -lpnetcdf -lnetcdf -lnetcdff") | ||
#if (NOT MPILIB STREQUAL mpi-serial) | ||
# string(APPEND SLIBS " -L$ENV{ADIOS2_DIR}/lib64 -ladios2_c_mpi -ladios2_c -ladios2_core_mpi -ladios2_core -ladios2_evpath -ladios2_ffs -ladios2_dill -ladios2_atl -ladios2_enet") | ||
#endif() | ||
string(APPEND SLIBS " -qmkl") | ||
set(CXX_LINKER "FORTRAN") | ||
set(NETCDF_PATH "$ENV{CRAY_NETCDF_HDF5PARALLEL_PREFIX}") | ||
set(NETCDF_C_PATH "$ENV{CRAY_NETCDF_HDF5PARALLEL_PREFIX}") | ||
set(NETCDF_FORTRAN_PATH "$ENV{CRAY_NETCDF_HDF5PARALLEL_PREFIX}") | ||
set(HDF5_PATH "$ENV{CRAY_HDF5_PARALLEL_PREFIX}") | ||
set(PNETCDF_PATH "$ENV{CRAY_PARALLEL_NETCDF_PREFIX}") | ||
|
||
set(MPICC "cc") | ||
set(MPICXX "CC") | ||
set(MPIFC "ftn") | ||
set(SCC "icx") | ||
set(SCXX "icpx") | ||
set(SFC "ifx") | ||
|
||
# Bit of a hack here. For whatever reason, the intel version on pm-cpu (both intel and intel-oneapi, and both icpc/icpx) | ||
# does not seem to have the -fp-model=source flag (docs still show it). And I was unable to find a reliable way of testing | ||
# on the compiler ID or version, so for now, simply manually adjust the CXXFLAG setting for pm-cpu/intel | ||
# Try to manually remove -fp-model=source (and replace with -fp-model=precise) from CXXFLAGS | ||
#message(STATUS "ndk CXXFLAGS=${CXXFLAGS}") | ||
set(CXXFLAGS " ") # hardcode it here to blank, then try to do same things as in intel.cmake | ||
if (compile_threaded) | ||
string(APPEND CXXFLAGS " -qopenmp") | ||
endif() | ||
if (DEBUG) | ||
string(APPEND CXXFLAGS " -O0 -g") | ||
endif() | ||
if (NOT DEBUG) | ||
string(APPEND CXXFLAGS " -O2") | ||
endif() | ||
string(APPEND CXXFLAGS " -fp-model=precise") # and manually add precise | ||
#message(STATUS "ndk CXXFLAGS=${CXXFLAGS}") | ||
|
||
string(APPEND FFLAGS " -fp-model=consistent -fimf-use-svml") | ||
if (NOT DEBUG) | ||
# string(APPEND FFLAGS " -qno-opt-dynamic-align") | ||
string(APPEND FFLAGS " -g -traceback") | ||
string(APPEND CXXFLAGS " -g -traceback") | ||
endif() | ||
string(APPEND FFLAGS " -DHAVE_ERF_INTRINSICS") | ||
string(APPEND CXXFLAGS " -fp-model=consistent") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters